Docker镜像及容器迁移相关技术深刻剖析-Docker商业环境实战

专一于大数据及容器云核心技术解密,可提供全栈的大数据+云原平生台咨询方案,请持续关注本套博客。若有任何学术交流,可随时联系。更多内容请关注《数据云技术社区》公众号。 docker

1 持久化容器-export

  • export命令用于持久化容器(不是镜像)。
  • 导出后在本地能够看到有一个centos.tar的容器快照。

2 持久化镜像-save

  • Save命令用于持久化镜像(不是容器)。
  • 将一个镜像导出为文件,再使用docker load命令将文件导入为一个镜像,会保存该镜像的的全部历史记录。比docker export命令导出的文件大,很好理解,由于会保存镜像的全部历史记录。
sudo docker images
接着执行保存:
sudo docker save busybox-1 > /home/save.tar
复制代码

3 导入某个容器-import

  • 使用docker import命令将容器导入成为一个新的镜像,
  • 有了容器快照以后,咱们能够在想要的时候随时导入。导入快照使用docker import命令。
  • 注意-是数据流
  • docker import能够从新指定镜像的名字
例如咱们能够使用cat centos.tar | docker import - my/centos:v888 导入容器快照做为镜像
复制代码

4 导入某个容器-load

  • docker import能够从新指定镜像的名字,docker load不能够
docker load < /home/save.tar

显示镜像的全部层(layer)
sudo docker images --tree
复制代码
  • 执行命令,显示下面的内容,导出后再导入(exported-imported)的镜像会丢失全部的历史。
  • 而保存后再加载(saveed-loaded)的镜像没有丢失历史和层(layer)。
  • 这意味着使用导出后再导入的方式,你将没法回滚到以前的层(layer),同时,使用保存后再加载的方式持久化整个镜像,就能够作到层回滚(能够执行docker tag 来回滚以前的层)

5 总结

比较实用,总结于此。centos

专一于大数据及容器云核心技术解密,可提供全栈的大数据+云原平生台咨询方案,请持续关注本套博客。若有任何学术交流,可随时联系。更多内容请关注《数据云技术社区》公众号。 bash

相关文章
相关标签/搜索