这是在一个典型的 Docker 安装的私有 VPS 上的自托管 Discourse 安装中进行的。
我又犯了同样的错误:
我等待了两个小时的“完美”更新重建到 v3.4.0.beta2-dev。
然后添加了几行到 app.yml,又等待了两个小时进行另一次重建。
(为什么分开操作?因为如果可能出错,双重打击永远不好。)
然后我在日志中发现了运行时错误,因为我忘记在 app.yml 中添加空格(用于 MaxMind 账户和密钥)。
所以今晚我需要再进行一次重建。
这超过了六个小时的虚拟停机时间,而 WordPress 或其他 CMS 网站在完全相同的情况下只需要几分钟。这简直是“糟糕的用户体验”,因此是“反营销”——这对平台来说一点好处都没有。
我不得不进行第二次重建的唯一原因是我添加了这两行该死的内容。我真希望仅仅因为配置文件中的这个小改动就不需要进行完全重建。
-
有没有讨论过在重建之前对 yml 文件进行验证?这个简单的功能本可以消除耗时的操作和后续问题。
-
有没有讨论过一个预处理器,用于确定在特定更改后是否需要进行完全重建?
-
我很惊讶 YAML 错误没有在日志中报告。主运行时 .yml 文件夹以及其他文件夹没有进行语法错误检查是有原因的吗?……或者更有经验的管理员会在重建之前自己进行代码检查?

我之所以选择在 Docker 中托管,是因为我相信这是最“简单”的平台,以便将来将此系统移交给他人维护。如果事实并非如此,并且我选择了“不简单”甚至“最慢”的选项,也许我应该考虑其他安装选项。
谢谢!