如何将本地 docker 镜像导出到 tar 并加载到另一台计算机上

MrG*_*MrG 8 linux macos docker dockerfile docker-compose

我的 windows PC 上有本地映像

$ docker ps
CONTAINER ID        IMAGE                        COMMAND             CREATED                  STATUS              PORTS
52f36432c9a7        visionai/clouddream:latest   "/bin/bash"         Less than a second ago   Up 3 minutes
Run Code Online (Sandbox Code Playgroud)

现在我想将其导出到 tar,因此保存在我的闪存盘中,然后加载到我的 mac 中。

我尝试这些但不起作用:

    $ docker save -o visionai/clouddream clouddream.tar
Error response from daemon: No such image: clouddream.tar
Run Code Online (Sandbox Code Playgroud)

$ docker export visionai/clouddream > clouddream.tar
Error response from daemon: No such container: visionai/clouddream
Run Code Online (Sandbox Code Playgroud)

小智 12

最好的方法是使用保存/加载命令,因为 CMD 已保存。使用导入/导出命令不会保存 CMD。

将 docker 镜像保存到磁盘:

docker save --output="image_name.tar" id_image
Run Code Online (Sandbox Code Playgroud)

从光盘加载 docker 镜像:

docker load --input image_name.tar
Run Code Online (Sandbox Code Playgroud)

如果列表图像后存储库和标签是<无>,您可以重命名您的图像设置新存储库:标签

Docker tag new_repository:new_tag
Run Code Online (Sandbox Code Playgroud)


mic*_*ard 6

您反转了 docker save 的参数:

docker save -o clouddream.tar visionai/clouddream
Run Code Online (Sandbox Code Playgroud)

docker export 导出一个容器,但您尝试导出一个映像,因此它无法工作