Discourse 安装完成后,许多功能(包括核心 Discourse 和插件)都需要通过设置界面手动配置,这涉及大量输入和点击操作,还需要记住各项设置的位置。是否可以将这些设置作为部署的一部分来定义,例如在初始部署完成后运行一个可参数化的脚本?
您可以轻松创建一个插件来设置“任何及所有”站点设置。
希望这能帮到您。
这是可行的,但我想问的是,你为什么需要这样做?你是在为大量站点进行配置吗?
要在新服务器上重建一个完全相同的站点,你只需要该站点的备份以及一份 app.yml 文件的副本。
此外,设置会在重建过程中保持不变,因此无需担心在同一服务器上进行本地升级的问题。
如果你需要创建站点模板,我认为只需一个备份和一个模板化的 app.yml 文件即可实现。你可以根据需要在 app.yml 中修改站点设置。
1 个赞
我们正在创建多个站点,每个站点都需要不同的设置(品牌、安全配置等)。每次需要设置的配置项相同,只是具体的取值不同。
我们的部署方案基于使用 Ansible 将 Bitnami 容器部署到 Kubernetes(K8S)。
1 个赞
那么,你也可以按照建议创建一个 YAML 模板,并在容器文件中包含带有自定义站点设置的该模板。
或者,你也可以使用插件实现类似的功能,从共享目录中的文件或远程位置读取特定于站点的设置。
您可以使用环境变量设置所有站点配置(例如 DISCOURSE_SETTING_NAME=xxx)。您还可以通过 API 进行更改。此外,正如 NoBugsBunny 所建议的,有时使用插件是一个很好的实现方式。
这超出了我在此提供的免费支持范围。我不推荐 Bitnami,但曾与使用它的客户合作过。我完成过几次 GKE 部署(使用 ./launcher 构建的受支持容器),并具备使用 Ansible 部署和管理 Discourse 的经验。如果您需要帮助且拥有预算,请联系 jay@literatecomputing.com。
1 个赞