docker生产的图像需要代码量或不是

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

现在当我想要释放我的东西时,我有两个疑问

  1. 我是否遵循相同的stream程并使用部署脚本更新生产主机中的代码?
  2. 或者我的生产映像没有任何主机装入的卷,甚至我把我的代码作为图像的一部分,以便在生产中我不需要从github获取任何代码。

我不知道要走哪条路

两者都是有效的做事方式。 如果您使用kubernetes,Amazon Container服务等,则可能必须使用选项2,因为它们不支持主机装入的卷。 选项2也更方便,因为您可以轻松地将容器移动到多节点docker群上。 但是,如果您已经有了使用厨师或云计算的部署系统设置选项1,则允许使用与您的代码版本无关的更通用的容器。

卷本身永远不会成为映像的一部分,因为它们始终从主机挂载。 但是,您可以制作一个通用基础映像,然后在您的代码回购中使用docker文件

 from my-user/my-generic-base ADD /code:/var/www/code 

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