在没有直接访问 Docker Hub 或其他 Docker 镜像仓库的情况下,我们可以通过保存和加载镜像的方式,在不同的服务器之间迁移 Docker 镜像。
迁移步骤概述
1. 保存 Docker 镜像
在源服务器上,使用以下命令保存 Docker 镜像为 tar 文件:
sudo docker save -o <image-name>.tar <image>:<tag>
这里的 <image-name>
是你要保存的镜像的名称,<tag>
是镜像的标签。
比如这里,我们想要迁移8u282版本的jdk
输入命令:
docker save -o openjdk.tar openjdk:8u282-jre
就可以得到tar文件:
2. 传输 Docker 镜像文件
将保存的 Docker 镜像文件通过 SCP、FTP 或其他文件传输方法传送到目标服务器。
3. 加载 Docker 镜像
在目标服务器上,使用以下命令加载 Docker 镜像文件:
sudo docker load -i <image-name>.tar
回到上面迁移jdk的例子,我们使用:
sudo docker load -i openjdk.tar
加载完成后,使用 sudo docker images
验证镜像是否加载成功。
如图所示,可以看到镜像就代表我们的迁移已经成功!