我有两台机器(独立主机)运行docker,我在两台机器上使用相同的图像。如何使两个图像保持同步。例如。假设我对其中一个主机中的图像进行了更改,并希望更改也反映在其他主机中。我可以提交图像并将图像复制到另一台主机。有没有其他有效的方法呢?
答案 0 :(得分:3)
我能想到的一些方法:
这里的工作流程是:
docker commit
,docker push
docker pull
.tar
文件这里的工作流程是:
docker save
docker load
Dockerfile
并再次构建图像这里的工作流程是:
Dockerfile
以及您所需的代码/文件docker build
创建新图片。docker build
图像您可以在此处看到视频:docker.com/use-cases/cicd
请注意,containers
被认为是短暂的。这意味着更新另一台主机内的image
将需要:
stop
和remove
任何旧容器(使用过时的图像运行)run
新的(带有更新后的图片)我引用:Best practices for writing Dockerfiles
一般指导方针和建议
容器应该是短暂的
Dockerfile定义的图像生成的容器应尽可能短暂。 通过“短暂的”,我们的意思是它可以被停止和销毁,并且建立一个新的,并且绝对最少的设置和配置。
答案 1 :(得分:0)
您可以执行docker push
将图片上传到docker registry
并执行docker pull
以获取其他主机的最新图片。
有关详细信息,请查看this