Docker容器中的备份、恢复、迁移、导入、导出

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

实验环境

操作系统:Ubuntu 18.04.4 LTS

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

镜像举例:mysql:5.6

注意:必须要先安装Docker容器,参考:https://www.linuxprobe.com/ubuntu-install-docker-ce

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

Docker容器中的备份、恢复、迁移、导入、导出_第1张图片

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

Docker容器中的备份、恢复、迁移、导入、导出_第2张图片

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的安装及配置,这样可以把业务中的镜像全部推送到私有仓库中,提高工作效率。

原文地址:https://www.linuxprobe.com/docker-save-load.html

你可能感兴趣的:(Linux资讯)