每次发出 commit 命令时,Docker commit 都会创建一个新镜像。是否可以在当前运行的容器上发出提交并将更改保存到现有图像((此处的现有图像是生成容器的图像))。这样每次执行提交时都不会创建新图像。
请让我知道这是否可能?
最佳答案
使用名称和标签已经更新了您想要的图像。确保在提交期间将相同图像的名称放在容器 ID 之后。来自 doc :
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c3f279d17e0a ubuntu:12.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky
197387f1b436 ubuntu:12.04 /bin/bash 7 days ago Up 25 hours focused_hamilton
$ docker commit c3f279d17e0a svendowideit/testimage:version3
编辑:我强烈建议您在继续之前停止容器,这样可以减少下次运行进入陈旧状态的机会。此外,使用不同的标签,测试它,然后重新标记到您的真实目标可能是个好主意。
编辑 2:正如@MilindDeore 所指出的,这不会在物理上覆盖之前的图像,而是重新命名名称。因此,您可能必须手动删除或等待它被垃圾收集(如果已到位)。
关于docker-container - Docker 在现有镜像上提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44222376/