Tag: 12factor

如何在开发过程中模仿“反向代理或负载平衡器设置背后的Docker容器”

在Docker容器内部开发和testing应用程序,并最终以相同的方式在生产环境中运行它们,是减lessused to work on my machine but is magically failing in production一个很好的方法, used to work on my machine but is magically failing in production风险方面used to work on my machine but is magically failing in production 。 这也体现在因子no。 我所试图遵循的10个着名的因素宣言中的任何一个对于给定的用例都是有意义的: Keep development, staging, and production as similar as possible. 在我们的生产服务器上,我们有一个反向代理,在端口80上接收传入请求,并根据通过虚拟域访问主机时使用的Host头将它们转发到正确的容器 – 例如对app1.domain.name请求转到app1容器,而对app2.domain.name请求转到app2容器等。我们使用traefik ,但它也可以是jwilder / nginx-proxy或任何其他反向代理或负载平衡器。 没有其他的容器端口公开地暴露给应用程序容器。 我现在的问题是,在开发过程中模拟这个设置的最有效的方法是什么? […]

在jenkins版本中包含.env文件的最佳做法是什么?

这是我的情况:我有一个Django的应用程序,这取决于configuration值存储在一个.env文件。 这个.env文件与源代码pipe理是分开的,以保持敏感信息的私密性。 这Django应用程序部署在一个docker容器,我有jenkins设置重build容器,每当检查到我们的Git仓库的变化。 构build将失败,除非在构build环境中存在.env文件。 包含该文件的最佳方式是什么? 我现在有jenkins设置执行一个shell文件写入到生成环境的命令,但我不禁觉得这是次优的,安全明智的。 什么是更好的方法来做到这一点?