Docker生产映像是否需要代码作为卷

时间:2015-01-17 02:02:42

标签: ubuntu deployment docker

我正在使用docker,我在我的开发中将代码安装在/var/www/code的主机中。

现在,当我想在生产中发布我的东西时,我有两个疑问

  1. 我是否遵循相同的流程并使用部署脚本
  2. 更新生产主机中的代码
  3. 或者我的生产图片没有任何主机安装卷,甚至我把我的代码作为图像的一部分,所以在生产中我不需要从github获取任何代码。
  4. 我不知道该走哪条路

1 个答案:

答案 0 :(得分:1)

两者都是有效的做事方式。如果您使用kubernetes,Amazon Container服务等,您可能必须使用选项2,因为它们不支持主机安装的卷。选项2也更加便携,因为您可以轻松地在多节点泊坞机群上移动容器。但是,如果您已经使用chef或cloud-formation等进行部署系统设置,则选项1允许使用与代码版本无关的更通用的容器。

卷本身永远不会成为映像的一部分,因为它们始终从主机挂载。但是,您可以创建一个通用的基本映像,然后使用

在代码库中创建docker文件
from my-user/my-generic-base
ADD /code:/var/www/code

将下游容器部署到dockerhub时​​,请确保使用版本号部署它,以指示它将运行的代码版本。