mirror of
https://github.com/kuaifan/dootask.git
synced 2026-07-31 02:15:57 +00:00
2.0 KiB
2.0 KiB
id, title, type, feature, scope, locale, aliases, related_tools, related_pages, prerequisites, negative, last_verified
| id | title | type | feature | scope | locale | aliases | related_tools | related_pages | prerequisites | negative | last_verified | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common-faq.deploy-backup.faq | 怎么备份 DooTask 数据 | faq | common-faq | admin | zh |
|
|
|
v1.7.90 |
怎么备份 DooTask 数据
完整备份包含三部分
- 数据库:所有任务、项目、消息、用户元数据
- 附件目录:
public/uploads/(附件、头像) - 配置:
.env、docker/appstore/config/、SSL 证书
数据库
sudo ./cmd mysql backup # 备份到 docker/mysql/backup/<db>_<时间戳>.sql.gz
sudo ./cmd mysql restore # 列出备份让你选编号还原
./cmd update 会自动备份一次,升级前不用手动操作。
附件目录
没有内置命令,自己打包:
tar czf uploads-$(date +%F).tar.gz --exclude='public/uploads/tmp' public/uploads
配置
tar czf config-$(date +%F).tar.gz .env docker/appstore/config
定期自动备份
crontab 每日凌晨:
0 2 * * * cd /path/to/dootask && ./cmd mysql backup && tar czf /backups/uploads-$(date +\%F).tar.gz --exclude='public/uploads/tmp' public/uploads
再用 rsync / rclone 同步到 S3 / OSS / NAS 外部存储。
迁移到新服务器
- 旧机:备份数据库 + 打包 uploads + 复制
.env - 新机:
./cmd install部署 - 还原数据库 → 替换
public/uploads/→ 抄.env关键项(APP_KEY、JWT_KEY 等) ./cmd php restart
不要做
- 不要只备份数据库不备份 uploads,附件丢了不可恢复
- 不要拷贝
docker/mysql/data/替代 SQL 备份,跨版本可能不兼容