diff --git a/deploy/backup-db.sh b/deploy/backup-db.sh index c4965629..562c3603 100755 --- a/deploy/backup-db.sh +++ b/deploy/backup-db.sh @@ -76,6 +76,14 @@ run_backup_tool() { docker compose run --rm --no-deps -T backend node dist/db-backup.js "$@" } +ensure_backup_tool() { + if docker compose run --rm --no-deps -T backend test -f /app/dist/db-backup.js >/dev/null 2>&1; then + return + fi + + fail "当前 backend 镜像不包含 dist/db-backup.js,请先执行 docker compose build backend 重建镜像,再重新运行本脚本。" +} + run_pg_dump() { local database_url database_url="$(read_env_value DATABASE_URL)" @@ -164,6 +172,8 @@ main() { fail "backend 镜像不存在,请先完成部署:bash deploy/ubuntu-deploy.sh" fi + ensure_backup_tool + mkdir -p "${DB_DIR}" "${CONFIG_DIR}" backup_database backup_configs