主题自动化

我认为唯一的解决方案是构建一个包含所需插件的镜像,将其推送到 Docker 仓库,并使用适当的环境变量启动它,然后在某个时候,在镜像首次运行时(至少),看到数据库已迁移并且资源已预编译并推送到 S3。您可能希望在旧镜像运行时将 SKIP_POST_DEPLOYMENT_MIGRATIONS 设置为 true 进行一次迁移,然后在新镜像启动且旧镜像已关闭后,将 SKIP_POST_DEPLOYMENT_MIGRATIONS 设置为 false 再进行一次迁移,或者运行 db:ensure_post_migrations rake 任务。

您可以在运行的镜像中运行一个 rake 任务,类似:

         rake api_key:create_master['描述密钥']

上面的内容可能足以让您更进一步。我过去曾在 GCP 和 AWS 上为客户运行过 Kubernetes 实例。我对其工作方式从未感到 100% 满意(从客户的角度来看,它工作得很完美,只是从我的角度来看,它不太优雅,但也没有那么不优雅以至于我 bother 去修复它!)。我在这里没有更多可以提供的了,但如果您需要更多帮助,请随时直接与我联系。