貌似是 2.5.0.beta6 有个较大的更新,应该是数据库版本更新了。所以无法从 dashboard 更新论坛。
需要物理机 rebuild。
点升级就能看见:
You are running an old version of the Discourse image.
Upgrades via the web UI are disabled until you run the latest image.
To do so log in to your server using SSH and run:
cd /var/discourse git pull ./launcher rebuild app
反正都隔了一个小版本了也不着急,可以等 2.6.0 出了再升也行。
预期的步骤。
发个维护公告
备份
- Read-only mode please! - feature - Discourse Meta
开启全站只读模式 - 全站备份:backups
如果觉得有必要做好重装准备可以备份:
./containers/app.yml
- ssl 证书
依赖更新
参考:How do I manually update Discourse and Docker image to latest? - howto / admins - Discourse Meta
- 更新系统
建议开启自动更新- CentOS:
yum update
- CentOS:
- 更新 docker
apt 就能升级,应该叫docker-ce
更新 image
dashboard 升级到最新
目前必须 rebuild- rebuild image
cd /var/discourse git pull ./launcher rebuild app
- 可能的二次 rebuild:
./launcher rebuild app
命令行会有提示的 - 手工启动:
./launcher start app
一般 rebuild 完成会自动启动
如果 rebuild 卡住超过 10 min && htop
资源占用不高。
备选项:./discourse-doctor
至于我为什么这么熟练?
因为我去隔壁 Taichi 论坛 玩,求个 TeX 公式插件,然后大家都很忙。
需要自己动手丰衣足食,为了装插件昨天(17号)给他们更新了一下。
他们是从 2.5.0.beta6 → 2.5.0.beta7 也需要 rebuild。
rebuild 2次,耗时大概 20min~,还顺带装了一波插件,一共 30min~。
当然维护时间我写的是 2h,绰绰有余。