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

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

[复制链接]
累计签到:5 天
连续签到:1 天
发表于 2015-10-13 08:20:45 | 显示全部楼层 |阅读模式
  


  很喜欢玩docker,但最新遇到一个问题,公司给的新机器的dns有问题,导致pull不下来镜像。
  

DSC0000.jpg



DSC0001.jpg
  
  


  没办法了,没有镜像什么神马都干不了,又不能花很多时间去搭建私有的镜像库,只有另寻办法了。
  废话少说,经过探究,发现 docker 提供把镜像导出export(保存save)为文件的机制,这样就可以把镜像copy到任意地方了。
  


  1. 导出 export
- 导入 import

  格式:docker export CONTAINER(容器)
  使用 docker ps -a 查看本机已有的容器,如:


DSC0002.jpg


  我们使用容器 furious_bell,现在要将这个容器保存为一个文件 myunbuntu-export-1204.tar


  

docker export furious_bell > /home/myubuntu-export-1204.tar

导出完成后,就可以使用 import 导入了  
  

docker import - /home/myubuntu-export-1204.tar
  
  2.保存save
- 加载 load

  
  格式:docker save IMAGE(镜像)


  使用 docker images 查看本机已有的镜像(也可以使用 docker commit <CONTAIN-ID> <IMAGE-NAME>命令把一个正在运行的容器保存为镜像),如:



  这里有个基础镜像:ubuntu:12.04,现在要将这个镜像保存为一个文件myubuntu-save-1204.tar

docker save 9610cfc68e8d > /home/myubuntu-save-1204.tar
  



有点慢,稍微等待一下,没有任何warn信息就表示保存OK。9610cfc68e8d 是镜像ID


  现在就可以在任何装 docker 的地方加载 刚保存的镜像了
  

docker load < /home/myubuntu-save-1204.tar</span>
  
  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)
  
  


  


  参考:
  

http://www.tuicool.com/articles/emYVRzv

[img]http://onexin.iyunv.com/source/plugin/onexin_bigdata/file:///C:UsersmanAppDataLocalTemp[5UQ[BL(6~BS2JV6W}N6[%S.png[/img]http://my.oschina.net/zjzhai/blog/225112

http://www.sxt.cn/u/756/blog/5339

  
  


  


  



版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 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-126036-1-1.html 上篇帖子: Docker实践7:容器与主机拷贝数据 下篇帖子: Docker 存储池扩容
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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