散装容器的图像拉没有“docker拉”

有没有什么办法可以下载容器的图像,而不使用docker拉。 我想将多个容器运送到不具有互联网接入的不同环境。

目前我在跟随

  1. 使用docker pull命令通过图像下载图像
  2. docker保存image.tar
  3. 将tar复制到目标
  4. docker装载

如果你的图像依赖于另一个图像,一个技巧就是做一个最复杂的图像(在其他图像之上build立的图像)的docker run :这会触发所有图像的docker pull

但对于不相关的图像,你仍然需要单独拉他们。

我不知道如何将所有图像保存在脚本旁边。
请参阅save-all-images.sh的save-all-images.sh实例。

 save-all-image() { local ids=$(docker images -q) local name safename tag for id in $ids; do name=$(get-image-name $id) tag=$(get-image-tag $id) if [[ $name =~ / ]] ; then dir=${name%/*} mkdir -p $dir fi echo [DEBUG] save $name:$tag ... (time docker save -o $name.$tag.dim $name:$tag) 2>&1|grep real done }