
战略品牌合作方
VMRACK.NET | 让Dujiao-Next部署更简单
⚡️官方合作闪购款,仅需76刀/年,三网优化线路,助力您业务起飞,支持:支付宝/paypal/USDT。点我享低价独家闪购!🎉







更新时间:2026-03-28
定期备份是保障站点数据安全的关键。本指南介绍 Dujiao-Next 各组件的备份与恢复方法。
| 内容 | 路径 | 重要性 |
|---|---|---|
| 数据库 | db/(SQLite)或 PostgreSQL | 最高 |
| 配置文件 | config.yml | 高 |
| 上传文件 | uploads/ | 高 |
前端已内嵌进二进制,没有需要单独备份的静态文件目录。 下文路径均相对于程序运行目录(Docker 部署下对应宿主机挂载出来的
data/目录)。
SQLite 数据存储在单个文件中,直接复制即可:
# 备份
cp db/dujiao.db db/dujiao.db.bak.$(date +%Y%m%d%H%M%S)建议在服务停止或低流量时备份,避免写入冲突。
使用 pg_dump 备份:
# 备份整个数据库
pg_dump -U dujiao -d dujiao -F c -f dujiao_backup_$(date +%Y%m%d).dump
# 仅备份数据(不含结构,适合迁移)
pg_dump -U dujiao -d dujiao --data-only -f dujiao_data_$(date +%Y%m%d).sql# SQLite(直接从容器中拷贝)
docker compose cp dujiao-next:/app/db/dujiao.db ./backup/dujiao.db
# PostgreSQL(使用 pg_dump)
docker compose exec postgres pg_dump -U dujiao -d dujiao -F c -f /tmp/backup.dump
docker compose cp postgres:/tmp/backup.dump ./backup/cp config.yml backup/config.yml.$(date +%Y%m%d)
config.yml包含数据库密码、JWT 密钥等敏感信息,其中app.secret_key是恢复数据库内加密配置所必需的。请限制备份文件权限,并始终让它与对应数据库备份配套保存。
# 直接复制目录
cp -r uploads backup/uploads_$(date +%Y%m%d)
# 或使用 rsync 增量备份
rsync -av uploads/ backup/uploads/Docker 环境:
docker compose cp dujiao-next:/app/uploads ./backup/uploads创建定时备份脚本:
#!/bin/bash
# backup.sh
BACKUP_DIR="/path/to/backup/$(date +%Y%m%d)"
APP_DIR="/path/to/dujiao-studio/api"
mkdir -p "$BACKUP_DIR"
# 备份数据库(SQLite)
cp "$APP_DIR/db/dujiao.db" "$BACKUP_DIR/dujiao.db"
# 备份配置
cp "$APP_DIR/config.yml" "$BACKUP_DIR/config.yml"
# 备份上传文件
rsync -a "$APP_DIR/uploads/" "$BACKUP_DIR/uploads/"
# 清理 30 天前的备份
find /path/to/backup -maxdepth 1 -mtime +30 -type d -exec rm -rf {} \;
echo "Backup completed: $BACKUP_DIR"添加 crontab 定时执行:
# 每天凌晨 3 点执行备份
0 3 * * * /path/to/backup.sh >> /var/log/dujiao-backup.log 2>&1# 停止服务
systemctl stop dujiao-next
# 恢复数据库
cp backup/dujiao.db db/dujiao.db
# 启动服务
systemctl start dujiao-next# 停止服务
systemctl stop dujiao-next
# 恢复数据库
pg_restore -U dujiao -d dujiao -c backup/dujiao_backup.dump
# 启动服务
systemctl start dujiao-nextcp backup/config.yml config.yml
cp -r backup/uploads/* uploads/