如何在Dockerfile中定义docker提交消息
使用如何在Dockerfile中定义docker提交消息,docker,dockerfile,Docker,Dockerfile,使用Dockerfile(docker build)是手动执行docker提交的替代方法。通过使用docker commit,有一个名为--message的选项,可用于定义提交消息。提交消息显示在docker history中名为COMMENT的专用列中。我的问题是:如何在Dockerfile中定义docker提交消息?官方文档对此进行了详细解释,以下是您的操作方法: 首先,将容器提交到图像: $ docker commit --message "Foo bar" 94bde3da7ffa do
Dockerfile
(docker build
)是手动执行docker提交的替代方法。通过使用docker commit
,有一个名为--message
的选项,可用于定义提交消息。提交消息显示在docker history
中名为COMMENT
的专用列中。我的问题是:如何在Dockerfile
中定义docker提交消息?官方文档对此进行了详细解释,以下是您的操作方法:
首先,将容器提交到图像:
$ docker commit --message "Foo bar" 94bde3da7ffa dockertestcommess
然后,标记图像以适合注册表地址:
$ docker tag dockertestcommess spekulant/dockertestcommess
最后推送提交的镜像:
$ docker push spekulant/dockertestcommess
我的docker history
显示了我提交的消息:
$ docker history spekulant/dockertestcommess
IMAGE CREATED CREATED BY SIZE COMMENT
d3c3f4e85723 7 minutes ago /bin/sh -c cat helloworld.txt 0B Foo bar
fec5f399e907 3 days ago /bin/sh -c #(nop) CMD ["/bin/sh" "-c" "cat … 0B
0f0405202b75 3 days ago /bin/sh -c #(nop) COPY file:17e1650f32b894fc… 8B
3fd9065eaf02 3 months ago /bin/sh -c #(nop) CMD ["/bin/sh"] 0B
<missing> 3 months ago /bin/sh -c #(nop) ADD file:093f0723fa46f6cdb… 4.15MB
$docker history spekulant/dockertestcommess
由大小注释创建的图像
d3c3f4e85723 7分钟前/bin/sh-c cat helloworld.txt 0B Foo bar
fec5f399e907 3天前/bin/sh-c#(nop)CMD[“/bin/sh”“-c”“cat…0B
0f0405202b75 3天前/bin/sh-c#(nop)复制文件:17e1650f32b894fc…8B
3fd9065eaf02 3个月前/bin/sh-c#(nop)CMD[“/bin/sh”]0B
3个月前/bin/sh-c#(nop)添加文件:093f0723fa46f6cdb…4.15MB
使用Dockerfile
和docker build
可以创建一个全新的映像。因此,您没有任何可以用消息注释的更改。无法在Dockerfile
中定义提交消息
正如文档指出的那样,docker commit
对于调试更有用。要创建新映像,建议使用docker build
:
这是有道理的,因为提交的映像很难复制,只有提交消息作为更改的提示。仅使用Dockerfile总是导致可复制的生成。OP知道这一点。OP想知道如何为每个Dockerfile提供提交消息。