docker镜像的备份恢复迁移
前言
为了备份该镜像,我们有以下几个选择:
- 我们可以将指定镜像保存成 tar 归档文件,需要使用时将 tar 包恢复为镜像即可;
- 登录 DockerHub 注册中心,将镜像推送至 DockerHub 仓库方便使用;
- 搭建私有镜像仓库,将镜像推送至私有镜像仓库方便使用。
镜像备份
使用 docker save 将指定镜像保存成 tar 归档文件。
docker save [OPTIONS] IMAGE [IMAGE...]
docker save -o /root/mycentos7.tar mycentos:7
-o :指定镜像打包后的归档文件存在哪以及归档文件的名称。
镜像恢复
使用 docker load 导入 docker save 命令导出的镜像归档文件。
docker load [OPTIONS]
docker load -i mycentos7.tar
–input, -i :指定导入的文件;
–quiet, -q :精简输出信息。
[root@centos8 dockerfile]# docker load -i /root/mycentos.tar
41f7535cb6df: Loading layer 4.096kB/4.096kB
75b7c9c3fa57: Loading layer 305.4MB/305.4MB
25cae08071e2: Loading layer 16.18MB/16.18MB
Loaded image: mycentos:7
[root@centos8 dockerfile]# docker load -i /root/mycentos.tar -q
Loaded image: mycentos:7
镜像迁移
镜像迁移同时涉及到了上面两个操作,备份和恢复。
我们可以将任何一个 Docker 镜像从一台机器迁移到另一台机器。在迁移过程中,首先我们要把容器构建为 Docker 镜像。然后,该 Docker 镜像被作为 tar 包文件保存到本地。此时只需要拷贝或移动该镜像到我们想要的机器上,恢复该镜像并运行容器即可。