首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不使用存储库的情况下将Docker映像从一个主机复制到另一个主机

如何在不使用存储库的情况下将Docker映像从一个主机复制到另一个主机
EN

Stack Overflow用户
提问于 2014-05-29 13:57:18
回答 20查看 1.1M关注 0票数 2K

如何在不使用存储库的情况下将Docker映像从一台计算机传输到另一台计算机,无论是私有的还是公共的?

我在VirtualBox中创建了自己的映像,当它完成后,我尝试将其部署到其他机器上,以实现真正的使用。

因为它基于我自己的映像(比如recreated ),所以不能从Dockerfile中重新创建它。我的文件很难移植。

有我可以使用的简单命令吗?还是另一个解决方案?

EN

回答 20

Stack Overflow用户

回答已采纳

发布于 2014-05-29 17:09:52

您需要将Docker映像保存为tar文件:

代码语言:javascript
复制
docker save -o <path for generated tar file> <image name>

然后,使用常规文件传输工具(如cpscprsync)将图像复制到新系统中(大文件首选)。之后,您必须将映像加载到Docker中:

代码语言:javascript
复制
docker load -i <path to image tar file>

PS:您可能需要sudo所有命令。

编辑:您应该使用-o添加文件名(而不仅仅是目录),例如:

代码语言:javascript
复制
docker save -o c:/myfile.tar centos:16
票数 3.3K
EN

Stack Overflow用户

发布于 2014-10-06 23:11:26

通过SSH传输Docker映像,动态压缩内容:

代码语言:javascript
复制
docker save <image> | bzip2 | ssh user@host docker load

注意,docker load会自动为您解压缩图像。它支持gzipbzip2xz

pv放在管道的中间以查看传输的进展情况也是一个好主意:

代码语言:javascript
复制
docker save <image> | bzip2 | pv | ssh user@host docker load

(有关pv的更多信息:主页手册页)。

@Thomas的重要注意事项:在高带宽情况下,bzip无法足够快地压缩。如果您可以以10 MB/s或更多的速度上传,gzip/gunzip将比bzip2快得多。

@jgmjgm建议你可以使用xz:它提供了更高的压缩比。

票数 814
EN

Stack Overflow用户

发布于 2014-11-04 05:54:03

若要将图像保存到任何文件路径或共享NFS位置,请参阅下面的示例。

通过以下操作获取图像id:

代码语言:javascript
复制
docker images

假设你有一个id为“矩阵-数据”的图像。

用id保存图像:

代码语言:javascript
复制
docker save -o /home/matrix/matrix-data.tar matrix-data

将图像从路径复制到任何主机。现在使用以下方法导入到本地Docker安装中:

代码语言:javascript
复制
docker load -i <path to copied image file>
票数 149
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23935141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档