我有一个已经运行的docker容器.我做了一些配置更改,比方说在容器内的/ etc / hosts中添加了一些主机信息.如何保存更改,以便下次当我打开交互式shell到容器时,我不必再做同样的事情了?现在我已经在容器内创建了一个mini脚本,如下面的addhosts.sh,每次都要运行它.
echo "1.2.3.4 server1.example.com gluster1" >> /etc/hosts
echo "5.6.7.8 server2.example.com gluster2" >> /etc/hosts
这是其中一个案例.同样,我需要所有配置完好无损.请不要建议使用dockerfile,因为我没有创建图像,而是我刚刚进入容器.
最佳答案
您可以提交您所做的更改:
短命令参考:
docker commit
例:
docker commit c3f279d17e0a svendowideit/testimage:version3
完整参考:
Usage: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
Create a new image from a container's changes
Options:
-a,--author string Author (e.g.,"John Hannibal Smith
然后,您可以使用docker镜像在提交后查看新图像.
要从新映像运行容器:
docker run -d svendowideit / testimage:version3< optional startup command>
另一种方法是通过以下方式创建自己的图像:dockerfile,我只是把它放在这里,只是因为我们可以帮助别人.