Skip to content

更新维护

先备份,再更新。长期运行时请定期备份数据库和 .env

状态

一键部署:

bash
subboost status
subboost doctor

doctor 通过后,再做更新或排障。

高级部署在 local 目录运行:

bash
docker compose ps

再打开 /api/health/ready

备份

一键部署:

bash
subboost backup

备份内容包含数据库和 .env。两者要放在安全位置。

高级部署在 local 目录运行:

bash
docker compose exec db sh -c 'pg_dump -U "$POSTGRES_USER" -d "$POSTGRES_DB" --format=custom --compress=6 -f /tmp/subboost-backup.pgdump'
docker compose cp db:/tmp/subboost-backup.pgdump ./subboost-backup.pgdump
docker compose exec db rm -f /tmp/subboost-backup.pgdump
cp .env subboost-env.backup

保存 subboost-backup.pgdumpsubboost-env.backup

更新

一键更新:

bash
subboost update

更新后再检查:

bash
subboost doctor

如果页面异常,先看日志:

bash
subboost logs

日志会持续显示。看完后按 Ctrl+C 退出。

高级部署在 local 目录运行:

bash
docker compose up -d --build

如果只更新外部镜像:

bash
docker compose pull
docker compose up -d

恢复

恢复顺序:

  1. 停止应用。
  2. 恢复 PostgreSQL 数据库。
  3. 恢复同一份 .env
  4. 启动应用。
  5. 打开 /api/health/ready
  6. 登录管理员账号,刷新一个订阅。

高级部署示例:

bash
docker compose stop app cron
docker compose up -d db
docker compose cp ./subboost-backup.pgdump db:/tmp/subboost-backup.pgdump
docker compose exec db sh -c 'pg_restore -U "$POSTGRES_USER" -d "$POSTGRES_DB" --clean --if-exists --no-owner --no-acl /tmp/subboost-backup.pgdump'
docker compose exec db rm -f /tmp/subboost-backup.pgdump
cp subboost-env.backup .env
docker compose up -d --build

刚启动时健康接口可能短暂失败,等几秒后再检查。

健康检查

地址用途
/api/health/live应用进程是否响应。
/api/health/ready数据库等依赖是否就绪。

如果 ready 失败,优先检查 .env、数据库容器、数据库密码和 DATABASE_URL

SubBoost 面向在线使用、部署和维护。