使用Dockerfile
(docker build
)可以手动执行docker commit
。通过使用docker commit
,有一个名为--message
的选项,可用于定义提交消息。提交消息显示在docker history
中名为COMMENT
的专用列中。我的问题是:如何在Dockerfile
?
答案 0 :(得分:1)
在官方文档here中对此进行了详细解释,以下是您的操作方法:
首先,将容器提交给图像:
https://www.example.com/products/42
然后,标记图像以适合注册表地址:
$ docker commit --message "Foo bar" 94bde3da7ffa dockertestcommess
最后推送提交的图片:
$ docker tag dockertestcommess spekulant/dockertestcommess
我的$ docker push spekulant/dockertestcommess
显示了我提交的消息:
docker history
答案 1 :(得分:1)
使用Dockerfile
和docker build
,您可以创建一个全新的图像。因此,您没有任何可以通过消息进行评论的更改。无法在Dockerfile
中定义提交消息。
正如文档所指出的,docker commit
对于调试目的更有用。要创建新图片,建议使用docker build
:https://docs.docker.com/engine/reference/commandline/commit/#extended-description
这是有道理的,因为提交的图像难以重现,只有提交消息作为更改的提示。仅使用Dockerfile总是会导致可重现的构建。