Docker - docker镜像的导出、修改及导入

          在容器化的环境下,我们要是想要去修改一个没有Dockerfile的镜像该怎么办呢?

          一、我们要向这个镜像中添加一个文件,可以先将这个镜像启动成容器;

docker run -d --name demo_oldimages oldimage:1.0.0 /bin/bash -c "tail -f /dev/null"  #将镜像运行起来,并保证容器不退出

         二、 添加一个文件到这个容器里面;

docker cp /home/ec2-user/daopinz/demo/logback.xml e3cbaa08c34c:/opt/jars/     #将本地文件copy到容器内部

        三、将添加过文件的容器保存为快照,并保存到本地;

               或像GIT一样直接提交为一个新的镜像:docker commit  e3cbaa08c34c  new_images:1.0.1(只能跟旧镜像在同一个地方)

docker export e3cbaa08c34c > newimages.tar     #将容器制作为快照 .tar文件

         四、将保存的快照,恢复成一个新的镜像

cat newimages.tar |docker import - newimages:1.0.1     #导入容器快照作为新的镜像

          五、将新的镜像push到仓库,就可以在k8s等环境中使用啦;

docker push docker.io/newimgaes:1.0.1      #push新的镜像到仓库

微信公众号,搜索:zhangdaopin,也可方便快捷的看到本人的博客哦,谢谢~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章