【发布时间】:2015-01-19 04:38:28
【问题描述】:
我开始使用 docker,但我对开发环境和生产环境之间的区别感到困惑。
目前在我的开发 docker 中我使用这个
docker run -d -v /home/code:/var/www/code 这样我就可以从我的主机编辑文件了。
现在我希望在生产中我不将代码安装为卷,而是将其与所有代码一起发布。
所以我需要制作单独的图像并使用
ADD /home/code:/var/www/code
或者有什么方法可以只从一张图片中做到这一点
【问题讨论】:
-
理想情况下,我认为“Dev”和“Prod”之间的区别应该是规模(容器实例的数量)和对数据的访问(卷或数据库)
-
@MarkO'Connor 你能解释一下你的意思吗?我想了解更多
-
将您的软件打包为容器,保存在注册表中。在注册表中标记映像使您可以随时在任何机器上运行版本。对开发和测试很有用。通常你只会在生产中运行一个实例。它应该以与 Dev 相同的方式启动,但您需要更多实例才能处理更大的负载。其次,您的生产系统将使用自己的数据,无论是在数据卷中还是在开发人员通常无法访问的生产数据库中。
-
@MarkO'Connor 感谢标记,我将标记容器,如发布 1、2、3,并且我在单独的容器中拥有数据库。我唯一不确定的是有两个单独的图像用于开发和生产。就像在 prod
code中一样,它将成为图像的一部分,但在 dev 中它将从主机安装。这是正确的做法还是您推荐了其他东西
标签: ubuntu docker production-environment