为离线环境准备docker image tar

时间:2017-08-23 17:31:16

标签: docker docker-compose offline

最终编辑:找到解决方案 - 将其作为答案发布,希望它有用:)

我是docker的新手,想要实现一件事:

我想将我的泊坞广告图片存储到.tar,以便稍后在环境中启动d ocker-compose up ,而无需互联网连接。

我已尝试保存加载选项,但加载后,图片没有标记或存储库值 - 稍后启动 docker-撰写自动想要提取图像 - 而不是使用我加载的图像。

有谁知道如何实现我的目标?

编辑:我以前没写过 - 我的不好 - 我可以通过每个命令实现我想要的单个图像 - 通过传递图像而不是id,但是使用repo:tag - 不幸的是,我无法和找到在一个命令中为所有图像执行此操作的方法 - 当我通过id传递它们时使用 docker save -o。\ newTar.tar $(docker images -q),之后用 docker load -i。\ newTar.tar 加载它们并调用 docker-compose up 它们需要拉

2 个答案:

答案 0 :(得分:3)

感谢您的帮助 - 睡了一段时间后我想出了解决方案:D

因为如果你用repo:标签传递它们,加载图像会脱机工作,我使用这个保存命令:

docker save -o。\ firstTry.tar $(docker images --format“{{。存储库}}:{{。Tag}}”)

然后我加载它们:

docker load -i。\ firstTry.tar

结果:所有图像都保存在.tar文件中,可以加载它们而不必从回购中拉出来

答案 1 :(得分:2)

如果您已从代码中保存(例如docker save -o my-image.tar user9123/my-image:latest),则您的图片应加载(例如docker load -i my-image.tar)并带有代码

但是,如果这不起作用,您可以在加载后始终使用docker tag来命名图像。例如,docker tag 84fc2d8f0df8 user9123/my-image:latest