如何备份与恢复
需要备份的东西都在一个目录里:Docker 部署是 ./data,不用 Docker 时是 DATA_DIR 里的 tenants.json 加上每个租户的 data 和 recordings 目录(第一次启动生成的租户 main 也在 DATA_DIR 里)。里面有什么见数据目录。
模型文件(data/models)可以不备份,缺了服务器启动时会重新下载。
停机备份(最简单)
bash
docker compose stop
tar czf alldayrec-backup-$(date +%Y%m%d).tar.gz data
docker compose start不停机备份数据库
录音文件只会追加,可以直接复制;数据库 live.db 在运行中会被写,要用 SQLite 的备份接口复制。下面的命令在容器里把快速开始的租户 main 的数据库复制成 data/main/live-backup.db:
bash
docker compose exec alldayrec python -c "import sqlite3; sqlite3.connect('/data/main/live.db').backup(sqlite3.connect('/data/main/live-backup.db'))"每个租户都要做一遍,路径换成它在 tenants.json 里的 data 目录。
恢复
停掉服务器:
bashdocker compose stop把备份的
data目录(或其中某个租户的live.db)放回原处。启动:
bashdocker compose start