跳转到内容

升级

社区版一次发布 = 一个提交 + 一个 tag。升级就是切到新 tag、跑迁移、重启。

Terminal window
# 0. 先备份(生产必做)
docker compose -f deploy/compose.yml exec postgres \
pg_dump -U opskool_owner opskool > backup-$(date +%F).sql
# 1. 拉新 tag
git fetch --tags
git checkout v0.2.0
# 2. 重建并起
make up
# 3. 跑迁移(不要跑 db-reset,那是破坏性的)
make db-migrate

用预构建镜像时

章节:用预构建镜像时

只需换 tag 再 upcompose.image.yml 里的一次性 migrate 服务会自动先跑完:

Terminal window
export OPSKOOL_IMAGE=<registry>/<repo>:v0.2.0
docker compose -f deploy/compose.yml -f deploy/compose.image.yml up -d

迁移是幂等的,跑过的是空操作。

版本兼容口径

章节:版本兼容口径

迁移只向前,不提供降级脚本。回滚 = 用升级前的备份恢复,所以第 0 步的备份不是可选项。

生产若开了 wal-g(配了 OBJECT_STORAGE_*,见环境变量参考),还可以做时间点恢复(PITR)——但升级前手动 pg_dump 一份仍然更省事。

Terminal window
git describe --tags

发布记录见更新日志


本页是 CE README「常用命令」一节的展开;两处不一致时,以 README 为准。