我的系统上有下面的图像列表,我想将所有这些图像复制到远程计算机。
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
u14_py269 latest 6a1ec0b508b3 4 days ago 885.9 MB
u12_py273 latest c2a804894851 4 days ago 686 MB
u12_core latest 0d61eba80df2 4 days ago 629.1 MB
c6_py266 latest cb1a94742d59 4 days ago 1.32 GB
c6_core latest 77c2ed19d87f 4 days ago 1.278 GB
c7_py275 latest bb1d3de68452 4 days ago 1.117 GB
c7_core latest ca14a76e9cca 4 days ago 1.081 GB
u14_py35 latest d110c7e4a1f5 5 days ago 914.5 MB
u14_py34 latest 085a37cb8614 5 days ago 830.7 MB
u14_py276 latest 8927c6167930 5 days ago 834.1 MB
u14_core latest 93ead5abc25b 5 days ago 776.9 MB
centos centos6 36877b5acebb 5 days ago 228.9 MB
ubuntu latest 36248ae4a9ac 5 days ago 188 MB
ubuntu 12.04 94a7cb19a65b 5 days ago 137.8 MB
edgester/gerrit latest ce4e3238052a 6 days ago 735.2 MB
u14_as374_py276 latest fa5fb7189d70 11 days ago 1.497 GB
c721_as373_py275 latest 03ccf6961d0c 11 days ago 844.3 MB
c721_as373_py35 latest b5fece3dd45b 11 days ago 1.127 GB
c171_con_core latest 8af0d24a38a0 2 weeks ago 377.2 MB
u14_as374_php55 latest 29df638e363a 3 weeks ago 1.073 GB
j_u14_as374_php55 latest 29df638e363a 3 weeks ago 1.073 GB
centos centos7 c8a648134623 8 weeks ago 196.6 MB
centos latest c8a648134623 8 weeks ago 196.6 MB
j_u14_as374_py276 latest 28f379d60882 10 weeks ago 871.5 MB
ubuntu 14.04 89d5d8e8bafb 10 weeks ago 187.9 MB
目前我使用的方法建议在save and load Docker images,但我相信一定有一个更好的方法来处理所有的图像。
8条答案
按热度按时间pdkcd3nj1#
如果你想一次导出所有图像,请创建一个大的tar文件:
如果要将多个图像保存在一个
.tar
文件中:最后,如果要导出多个许多图像,每个图像一个
.tar
文件(磁盘效率不高:公共图层保存在每个.tar
文件中):您可能还希望保存图像列表,以便可以标记恢复的图像:
在远程机器上,可以
load
(导入)镜像:并标记导入的图像:
有关保存/加载的详细信息,请阅读:How to copy Docker images from one host to another without using a repository
nc1teljy2#
与Windows服务器托管的命令是有点不同.使用@EthanSN答案我发现以下工作-使用去格式化:
和load命令:
工作完美,不需要进口机器下载任何图像。
fdbelqdn3#
将所有带有
name:tag
的图像保存到一个tar
文件:然后,加载所有图像:
ttisahbt4#
非常感谢所有的awnsers,但我找到了一个基本而安全的解决方案to save:
在restore images之后:
qyuhtwio5#
执行Docker保存和加载功能的脚本(经过测试):
Docker保存:
Docker加载:
xjreopfe6#
使用注册表,您可以拥有类似于Git的工作流程。在本地修改容器,将更改提交到本地映像,然后将映像推送到注册表。然后您可以从远程机器拉取映像。
你可以使用公共的Docker Hub,也可以设置自己的注册表服务器。
https://docs.docker.com/registry/
5lhxktic7#
您可以使用Bash在每个映像上运行
docker save -o <save image to path> <image name>
来遍历对docker images
的响应,然后(假设您将它们都保存到一个文件夹中)可以将其压缩并scp到远程主机。z6psavjg8#
如果你在zsh: