重建 Discourse on Digital Ocean Droplet 后出现问题

我已成功在 Digital Ocean Droplet 上部署了 Discourse,但在初始化重建后遇到了问题。

  • 日志: 在此查看 - 特别值得注意的是,“检测到 x86_64 架构”的消息。
  • App.yml 配置: 在此查看

有人遇到过类似的问题吗?如果能提供任何见解或解决方案,我将不胜感激。

第 99 行到第 101 行的缩进级别不正确,它们需要再增加一级。请参阅此处以获取正确示例:

3 个赞

完成了!但我仍然遇到同样的问题。

您可以尝试将整个 YAML 文件通过 linter 进行检查,以发现更多问题。

3 个赞

我在 Discourse 设置中遇到了一些挑战:

  1. YAML 文件和语法

    • 我使用 YamlLint 验证了我的 YAML 配置;它没有标记任何问题。
    • 但是,Ruby 目录中出现了一个语法错误:
      /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups/config.rb:148:in `block (2 levels) in run_commands': Invalid run command cd (SyntaxError)
      ...
      from /usr/local/bin/pups:25:in `<main>'
      
  2. 重建和访问

  3. W3M 浏览器测试

    • 为了进一步诊断,我在 droplet 上安装了终端浏览器 w3m。
    • 访问 localhost 时出现“502 bad gateway”错误:
  4. SSL 问题

    • 我以为这可能是 SSL 问题,现在正在续订 SSL 证书。

任何见解或帮助都将不胜感激!

我的论坛已经宕机两天了。

如果达到了他们的请求限制,这可能是原因。您的审查结果如何?

您有论坛的备份吗?您尝试过在另一台服务器上恢复它吗?如果我的论坛停机两天,我会花 30 分钟尝试一下。

2 个赞

我没有论坛的备份,我对设置 Discourse 非常陌生。

如果您是从头开始,应该尝试使用新的子域安装一个全新的实例。如果遇到了 letsencrypt 的速率限制,这应该可以绕过它。 :+1:

1 个赞

将 Cloudflare 放在您的网站前面是导致 Let’s Encrypt 失败的一种方式。我建议在您确定 Let’s Encrypt 正常工作之前,使用 DNS Only 模式。

2 个赞

我已经有了用户和数据,我不想失去一切并从头开始

谢谢你的提示!它现在只在 DNS 上!:slightly_smiling_face:

编辑:我现在也收到错误 image

听起来简单的解决方案是迁移到另一个子域,或者等待一周,直到 Let’s Encrypt 颁发证书。更复杂的方法是添加第二个指向您服务器的子域,并修改您的 app.yml 以请求两个子域的证书。使用多个域设置 Let’s Encrypt。由于您的问题似乎是由于 YML 格式设置问题引起的,因此这种相当复杂的方法可能不适合您。

1 个赞

那么你绝对需要确保你有一个备份,并且把它放在安全的地方。

2 个赞

谢谢你的建议,我现在使用了不同的子域,但仍然遇到同样的问题。

出现“502”和“连接被拒绝”。

您子域名的 DNS 是否指向该服务器 IP 地址?并且您没有为该子域名设置其他 A 或 AAAA 记录?

我建议您运行 ./discourse-setup,它将检查您域名的入站连接是否已到达您的服务器。

您能否使用 ssh user@subdomain.yoursite.com(或您的子域名)通过主机名 SSH 到您的服务器?

1 个赞

是的,我已经确保子域名的 DNS 指向服务器 IP 地址,并且没有其他冲突的 A 或 AAAA 记录。

我已经执行了该命令,这是输出结果

最新更新: 执行 discourse-setup 后,访问 home.techwithanirudh.com 会出现“502 Bad Gateway”错误。这是错误的快照(请参阅附加图片)。

当然,使用主机名 SSH 到服务器工作正常。

我与 @techwithanirudh 进行了线下协作来解决此问题…… @techwithanirudh 并不知道聊天机器人卸载说明。

这里的线索(目前)是 502 错误,因为容器因 postgres 库中缺少支持代码而无法正确启动。卸载说明会从数据库中删除索引,这样您就可以在不构建索引库的情况下安全地进行构建。

@techwithanirudh 的网站现在已上线并运行。

7 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.