'docker container commit'命令以哪种方式帮助调试?

时间:2019-02-21 13:59:54

标签: docker

来自docks.docker.com

  

将容器的文件更改或设置提交到新图像中很有用。 这允许您通过运行交互式外壳调试容器,或将有效数据集导出到另一台服务器。

我可以在现有容器上运行交互式shell,而无需使用id | key ----------- 1 | null 创建新映像。

此外,如果我们希望单独的容器不破坏现有容器中的任何东西,则可以基于映像运行另一个容器。

那么,docker container commit如何帮助我调试容器?

1 个答案:

答案 0 :(得分:3)

您可能永远都不应该使用docker commit

从前,Docker没有docker exec。您唯一可以做的就是docker run一个新的容器。通常,您需要进行设置,以便docker build为您设置所有内容,并可以调试docker run --rm -it myimage sh,但是如果某些事情在运行时确实很奇怪,则缺少{{1} },最好的办法是提交容器的当前状态,然后在结果图像上运行带有交互式外壳的新容器。

这些天,正如您所说的,exec是用于实时调试的更好的工具。 (这并不是您使用容器的主要方式。)如果需要映像,docker execdocker build系统是生成映像的更可复制的方法。