当使用本机的tar文件作为镜像时,如果在容器中进行了修改,并且停止或重新启动容器,这些修改将会丢失。

解决这个问题的方法有两种:

  1. 使用Dockerfile重新构建镜像:将本机的tar文件作为镜像的基础,然后在Dockerfile中添加对容器中的修改。这样,每次停止或重新启动容器时,都会重新构建镜像,并将修改应用到新的容器中。这种方法的缺点是每次修改都需要重新构建镜像,比较繁琐。

  2. 将容器的修改保存为新的镜像:在容器中进行修改后,可以将容器保存为新的镜像。可以使用docker commit命令将容器保存为新的镜像,并指定一个标签来标识这个新的镜像。然后,每次停止或重新启动容器时,使用这个新的镜像来创建新的容器,以保留修改。这种方法的缺点是可能会产生多个镜像,增加管理的复杂性。

综合来说,如果需要频繁地对容器进行修改,并且希望修改能够保留下来,建议使用Dockerfile重新构建镜像的方式。如果修改较少且不频繁,可以使用docker commit命令将容器保存为新的镜像。

使用docker时如果镜像是来源于本机的tar文件修改后stop或restart该container修改会丢失吗?如何解决?

原文地址: http://www.cveoy.top/t/topic/iYOn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录