特别是针对 3.4.0.beta4 —— 系统需求是什么?

我不想遇到像 Update “3.4.0.beta4” failedUpgrade failed spectacularily 这样的升级问题——或者像 Severe Email Issue since last update a couple days ago - 3.4.0.beta4-devSevere Email Issue since last update a couple days ago - 3.4.0.beta4-dev550-Requested action not taken: mailbox unavailable on 3.4.0.beta4-dev 这样的与电子邮件相关的问题。

我看到过 https://meta.discourse.org/t/postgresql-15-update/349515,其中建议在理想情况下,我只需要运行 ./launcher rebuild app 两次(之后还可以运行一些可选命令)。它确实警告说,如果数据库非常大,需要两倍的数据库大小的额外磁盘空间(即使数据库很小,也需要额外的空间吗?)

是否有此升级的要求列表或具体说明?

如果您有磁盘空间并且 Docker 是最新的,您可能没问题。

如果您使用的操作系统已过时,导致您使用的 Docker 版本也已过时,您应该启动一个新的虚拟机,并按照将 Discourse 站点迁移到另一台 VPS (使用 rsync) 中的描述进行迁移。

我敢肯定,至少大多数遇到麻烦的人都拥有过时的 Docker 版本,而这大多数是由过时的操作系统版本引起的。

如果您启动一个新的虚拟机,那么一切都不会出错,因为您的旧服务器仍然可用。

3 个赞

好的,我试试。我认为这里的一些灾难发生在“已弃用”和“最低”(就像我现在这样)之间的 Docker 版本之间。

我怀疑确实如此。很难弄清楚究竟是哪个版本是确切的问题。我今天升级了大约 10 个站点。那些使用当前 Docker 版本的站点都运行正常。

我本可以这样做,但认为这些说明不够傻瓜化。我的方法是:

  • 启用只读模式。
  • 从管理员界面备份 Discourse。
  • Digital Ocean 快照。
  • sudo apt updatesudo apt upgradesudo do-release-update 两次(从 20.04 到 22.04,然后到 24.04)。
  • 正常更新 Discourse(两次,用于 Postgres 更新)。
1 个赞

太棒了!

我认为其他说明更不容易出错。如果出现问题,您现有的网站会继续运行。如果您的 do-release-update 步骤中的任何一个出现问题,您都只能不断恢复到最近的快照。

不过,有很多种方法可以做事情。

1 个赞

一猫多吃!

我说的“防傻瓜”是指说明本身,例如,rsync 要使用哪些标志(有各种建议),要遵循哪组说明(至少有三组)。

我明白你的观点,也就是说,一个傻瓜(如果他能遵循说明)最好还是用 rsync 的方式来做。我本来也想按你说的原因那样做,但我就是不相信自己能做出正确的决定。

如果我必须从快照恢复,我下次可能会尝试一下!

1 个赞