来源自github:docke从入门到实践
-
Docker 提供了 docker save 和 docker load 命令,用以将镜像保存为一 个文件,然后传输到另一个位置上,再加载进来。这是在没有 Docker Registry 时 的做法,现在已经不推荐,镜像迁移应该直接使用 Docker Registry,无论是直接使 用 Docker Hub 还是使用内网私有 Registry 都可以。
-
保存镜像并使用gzip压缩
docker save alpine | gzip > alpine-latest.tar.gz
- 将压缩镜像复制到另一个机器上加载镜像
docker load -i apline-latest.tar.gz
- 如果我们结合这两个命令以及 ssh 甚至 pv 的话,利用 Linux 强大的管道,我 们可以写一个命令完成从一个机器将镜像迁移到另一个机器,并且带进度条的功 能:
docker save <镜像名> | bzip2 | pv | ssh <用户名>@<主机名> 'cat | docker load'