假设我有10个泊坞窗图像.在所有10个泊坞窗图像中,许多层都是相似的.
使用时docker save -o,保存的图像是独立的,因此图像尺寸会变大.(~10张图片大小约为9GB)
拉完docker图像后,我探索:
/var/lib/docker
--- aufs (~3GB only)
--- containers (Few KBs)
--- image (Few KBs)
--- ...
--- mnt
Run Code Online (Sandbox Code Playgroud)
无论如何有效地导出图像?
我还尝试将aufs和image文件夹复制粘贴到新主机上.但有些容器无法启动.
检查日志时:
/usr/bin/sudo must be owned by uid 0 and have the setuid bit set
注意:我已经提到了这个.这个问题不重复.它没有解决我上面提到的用例.
我不知道这是否是正确的做法。但下面的方法对我有用。我使用 30 个Kolla Openstack Docker 镜像进行了测试。
为什么我有问题docker save?
正如我所说,我有 30 个 docker 镜像。当我保存时使用docker save -o <save image to path> <image name>. 总大小为 15 GB,太大而无法携带。
我做了什么 ?
长话短说:我仔细复制了aufs和image文件夹。
步骤1:
在要导出的计算机中:确保只有图像(要导出)。删除所有正在运行和停止的容器。
在要导入的计算机中:确保您没有任何图像和容器。
第 2 步: tar -cvf docker-images.tar /var/lib/docker/aufs /var/lib/docker/image它将所有图像层及其数据库压缩到一个 tar 文件中。大小仅为 3 GB
步骤3: 在机器中,您要导入图像,
tar -xvf docker-images.tar -C /var/lib/docker/。
现在重新启动docker。service docker restart。
| 归档时间: |
|
| 查看次数: |
6118 次 |
| 最近记录: |