快速更新,希望能对大家有所帮助——我们已成功在 Google Cloud 上部署了 Discourse!
它运行在 https://community.gitpod.io,目前我们非常满意。
详细信息
我主要参考了 INSTALL-cloud 文档,创建了一台 g1-small GCE 虚拟机(1 vCPU,1.7 GB 内存),并额外挂载了 20GB SSD。(注意:我最初考虑过 n1-standard-1 虚拟机,但觉得对于 Discourse 来说有点大材小用。)
关于虚拟机的位置,根据 这篇博客文章,我们确定 gce-us-east4 是最佳选择,因为大多数 Gitpod 用户位于北美和欧洲,但亚洲用户也很多,因此那里的延迟也不会太高。
在邮件设置方面,我们非常希望使用我们的 Google Apps 账户。我们尝试了 配置 Gmail SMTP 中继,但即使再三确认使用了正确的协议、在 GCP 防火墙中允许了这些协议,并正确设置了 IP 白名单,邮件仍然无法发送。Discourse Doctor 提供了很大帮助,但也没能成功。最终我们放弃了,转而使用 SendGrid,因为我们本来就想评估它用于其他用途。设置非常简单,一次就成功了。顺便提一下,我们的 Discourse 流量正在增长,但仍轻松符合 SendGrid 的免费层级(每天 100 封邮件)。
随后,我们设置了 GitHub OAuth 登录(与 gitpod.io 相同,方便起见),并安装了一些有用的插件:
- discourse-solved:用于标记问题为已解决
- discourse-chat-integration:用于在我们的内部 Slack 支持频道中通知新主题
另外,顺便一提,我写了一个简单粗糙的 spectrum-to-discourse.js Node.js 脚本,用于将我们旧的 Spectrum 主题迁移到 Discourse。质量并非 100% 完美,脚本中可能还有一些 bug,但这足以让我们为新 Discourse 提供初始内容。现在我们手动审查、修复或改进那些变得热门的老主题。
希望这些信息未来能帮到某人!![]()