更新失败 - 论坛无法使用,提示已是最新版本

我昨天尝试更新 Docker 管理器,但更新失败了。以下是日志:

https://pastebin.com/f7LBM1Vi

我在检查问题后尝试重新启动更新,但系统提示 Docker 管理器已是最新版本,没有可用的更新。于是我误以为更新仍然成功进行了(这是我的错误假设,现在我知道不该这样认为)。

今天,我继续尝试更新 Discourse 论坛,结果遇到了错误(我无法复制错误信息,因为页面重新加载了——不知道为什么,抱歉)。目前论坛无法使用(用户只能看到错误提示,并显示我们正在修复),但在幸运保持打开的管理员面板中,却显示 Discourse 论坛已是最新版本,没有可用更新,且应能正常运行。

请帮忙解决。

您尝试过重新构建吗?

SSH 登录到您的服务器并执行:

cd /var/discourse
git pull
./launcher rebuild app

我还没有。我刚发现一个和我类似的帖子。但我稍后会尝试一下,看看能否解决问题。感谢您的快速回复。

如果您在较长时间(约 4-6 个月)后更新,那么 Docker 管理器进行的一些更改可能导致了您描述的症状。重新构建即可解决这些问题。希望这能让您的论坛恢复在线。

鉴于这种情况频繁出现,是否应该在有新图像可用且需要重建时,在 /admin/update 页面显示警告?

我认为通知应该放在 /admin 而不是 /admin/update,以鼓励更定期的更新。

是的,自九月以来我一直无法更新论坛。那可能正是这里的问题所在。遗憾的是,Docker 管理器没有给出任何特别的警告。一旦我重新构建它,我会回来提交报告。但在此先感谢大家到目前为止的帮助。

确实如此。上次重构 $redis 时出现了一个 bug,由于更新之间存在竞态条件,导致系统这次无法发出警告。

但其他每次使用此功能时,系统都会非常明确地提示。

现在一切按预期运行,所有组件均已更新。
我所做的操作如下:

我从 这篇帖子 中复制了建议。
之后我按照您的建议进行了操作。整个过程耗时几分钟,但进展顺利,现在一切正常。

再次感谢您的帮助。