你好!
我正在为客户(一家非营利组织)寻找一个第三方论坛系统,目前看来 Discourse 是最受欢迎的选择。
在阅读 https://meta.discourse.org/ 后,我对开发生命周期仍没有清晰的理解。
- 如果我选择 Discourse 托管服务,是否会有远程服务器访问权限?
- 我是否需要在“本地主机”上搭建一个 Discourse 开发实例,用于测试插件和其他自定义功能(如主题、样式)?还是可以直接在“生产环境”中进行尝试和测试(我不太喜欢这种方式)?
- 是否有方法记录自定义操作(如应用样式和插件)?例如,在开发环境中运行脚本,如果测试通过后再部署到生产环境(Discourse 托管或自建)。这里的“持续交付”如何实现?
- 如果我的自定义更改不成功,如何回滚?对于插件测试,我是否只需“关闭”它即可?
任何帮助都将不胜感激。
1 个赞
Stephen
(Stephen)
2
如果您是由 CDCK 或 Communiteq(原 DiscourseHosting)托管,据我所知,这是完全托管的服务。您将无法获得 SSH 访问权限或类似权限。除非您使用的是企业计划,否则插件选项是固定的,并且所有内容都会由 respective 团队测试以确保兼容性。
您可以在这些托管选项上无限制地安装主题和主题组件。当然,始终建议使用测试实例。
据我所知,CDCK 托管在此方面没有持续交付(CD)选项,也许团队中的某位成员可以纠正我的错误。最坏的情况下,您将以与在其他地方测试相同的方式对实时站点进行这些更改。
在基本托管选项中,您无法安装额外的插件,这些选项默认包含许多最常见且支持良好的插件。您需要升级到他们的企业层级,或者选择自托管。插件需要整合到 app.yml 中并重新构建站点才能生效;要禁用它们,只需注释掉相应行并再次运行重新构建。主题和主题组件可以添加或移除,而不会影响运行时间或用户对站点的访问。
9 个赞
simon
3
我来补充确认一下,Stephen 发布的内容完全正确。
在我们的托管站点上,您可以完全访问 Discourse API,但无法通过 SSH 访问服务器。自定义插件无法在我们的标准版或商业版站点上安装,但您开发的插件在经过我们团队审核后可以安装在企业版站点上。要查看各套餐预装的插件,请访问 https://www.discourse.org/plugins。
自定义主题和主题组件可以在任何套餐上安装。
了解我们托管服务最简单的方法是从此处免费试用标准版或商业版:https://www.discourse.org/pricing。试用站点绝不会自动开始计费,因此这是零风险体验 Discourse 及其托管服务的方式。
8 个赞
pfaffman
(Jay Pfaffman)
5
回答你的问题的另一个方面是,如果你想要(或必须)做这些事情,那么你需要自行托管。
不过,你很可能不需要任何插件。大多数自定义功能都可以通过主题组件实现。
所有管理员操作都会在 UX 中记录日志,因此你可以查看谁在何时修改了什么内容。
如果你确实想开发自定义插件,我曾开发过一套 CI/CD 系统,允许你将 Discourse 和插件锁定到特定的提交版本,并通过向 GitHub 推送配置清单来对测试环境和生产环境站点进行更改。遗憾的是,该项目在我刚刚搭建完成后就被客户放弃了。
7 个赞