导读 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源;跨平台应用容器引擎服务。
实验环境

操作系统:Ubuntu 18.04.4 LTS

应用版本:Docker version 19.03.9, build 9d988398e7

镜像举例:mysql:5.6

注意:必须要先安装Docker容器,参考://q13zd.cn/ubuntu-install-docker-ce

Docker打包应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,Docker是跨平台的容器引擎,支持Windows、MAC OS、Linux等。

容器是完全使用沙箱机制,相互之间不会有任何接口,实现了资源隔离技术,容器内的资源互不影响,更重要的是容器性能开销极低。

Docker镜像拉取
root@linuxcool:~# docker pull mysql:5.6
5.6: Pulling from library/mysql
e62d08fa1eb1: Pull complete 
c4539e638b12: Pull complete 
0acb8f0db2a3: Pull complete 
e27254901ad3: Pull complete 
91e4d538a032: Pull complete 
8608c48c2d69: Pull complete 
2b7bbeb5e044: Pull complete 
f86c472cfc00: Pull complete 
3081c249e0ee: Pull complete 
caddb3474aca: Pull complete 
ec101f8c3a86: Pull complete 
Digest: sha256:60c27b50ca72d81d92a743a965a82f124a4e123c7d374a021887286408878d60
Status: Downloaded newer image for mysql:5.6
docker.io/library/mysql:5.6
Docker容器备份
root@linuxcool:~# docker image save mysql:5.6 -o mysql:5.6.tar.gz
mysql:5.6
mysql:5.6.tar.gz
Docker容器导出
root@linuxcool:~# docker save mysql:5.6 > mysql:5.6.tar.gz
mysql:5.6
mysql:5.6.tar.gz
Docker容器恢复
root@linuxcool:~# docker image load -i mysql:5.6.tar.gz
mysql:5.6.tar.gz
Docker容器导入
root@linuxcool:~# docker image load < mysql:5.6.tar.gz
Loaded image: mysql:5.6
mysql:5.6.tar.gz
Docker容器迁移

Docker容器迁移其实就是把现有的已经在运行Docker容器的服务器迁移到新的容器中,我们可以通过上面备份、恢复、导入、导出操作来完成迁移;如果企业镜像比较多的情况下,也可以配置私有仓库,通过私有仓库去拉取要迁移同步的镜像资源,再运行拉取的镜像,这样也可以完成容器迁移过程;后续继续发布私有仓库harbor的安装及配置,这样可以把业务中的镜像全部推送到私有仓库中,提高工作效率。

本文原创地址://q13zd.cn/docker-save-load.html编辑:向云艳,审核员:逄增宝