设为首页 收藏本站
查看: 791|回复: 0

[经验分享] 在 docker 之间导出导入镜像的方法

[复制链接]

尚未签到

发表于 2018-5-26 13:30:38 | 显示全部楼层 |阅读模式
  pull不下来镜像。
可以通过 docker 提供把镜像导出export(保存save)为文件的机制,这样就可以把镜像copy到任意地方了。
1. 导出 export - 导入 import
格式:docker export CONTAINER(容器)
使用 docker ps -a 查看本机已有的容器,如:
  [root@docker1 LAMP]# docker ps -a
  CONTAINER ID    IMAGE     COMMAND    CREATED     STATUS      PORTS                          NAMES
  dd43b6de6b33 weblogic:jdk1.6 "/run.sh" 3 days ago   Up 3 days  0.0.0.0:32771->22/tcp, 0.0.0.0:32770->7001/tcp   peaceful_saha
  aca388afeddf sshd:centos   "/run.sh" 4 days ago    Up 4 days  0.0.0.0:32769->22/tcp                   grave_turing
  ......
  [root@docker1 LAMP]# docker export dd43b6de6b33 >/home/weblogic:jdk1.6.tar
  [root@docker1 LAMP]# cd /home
  [root@docker1 home]# ls
  weblogic:jdk1.6.tar
导出完成后,就可以使用 import 导入了
[root@docker1 home]# docker import - /home/weblogic:jdk1.6.tar


2.保存save - 加载 load
格式:docker save IMAGE(镜像)

使用 docker images 查看本机已有的镜像(也可以使用 docker commit <CONTAIN-ID> <IMAGE-NAME>命令把一个正在运行的容器保存为镜像),如:
  [root@docker1 LAMP]# docker images
  REPOSITORY             TAG                 IMAGE ID            CREATED             SIZE
  ......
  docker.io/tutum/lamp      latest              3d49e175ec00        22 months ago       426.9 MB
  ......
  [root@docker1 LAMP]# docker save 3d49e175ec00 >lamp.tar
  [root@docker1 LAMP]# ls
  Dockerfile  lamp.tar
  [root@docker1 LAMP]# sz lamp.tar
  rz
  Starting zmodem transfer.  Press Ctrl+C to cancel.
  Transferring lamp.tar...
  100%  430366 KB    14345 KB/sec    00:00:30       0 Errors
有点慢,稍微等待一下,没有任何warn信息就表示保存OK。3d49e175ec00 是镜像ID
现在就可以在任何装 docker 的地方加载 刚保存的镜像了
[root@docker1 home]# docker load < /lamp/lamp.tar


3.导出 export 与 保存 save 的区别
(1).export导出的镜像文件大小  小于 save保存的镜像
(2).export 导出(import导入)是根据容器拿到的镜像,再导入时会丢失镜像所有的历史,所以无法进行回滚操作(docker tag <LAYER ID> <IMAGE NAME>);而save保存(load加载)的镜像,没有丢失镜像的历史,可以回滚到之前的层(layer)。(查看方式:docker images --tree)
注:导入加载进来觉得不合适可以使用 docker rm 容器ID 、 docker rmi 镜像ID 来删掉。
移除所有的容器和镜像(大扫除):


  代码如下:
  
docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a)   








运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-481404-1-1.html 上篇帖子: 【系列6】使用Dockerfile创建带LAMP的Centos Docker镜像 下篇帖子: 【系列8】使用Dockerfile创建带MongoDB的Centos Docker镜像
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表