如何使用从另一台服务器加载的图像启动 docker 个容器?

How to start docker containers using images loaded from another server?

我有一个项目,其中包含在 docker-compose.yaml 文件中定义的多个服务。

当我 运行 docker-compose up -d 创建了几个 docker 图像,然后每个服务 运行在它自己的容器中。

我已按照此处 How to save all Docker images and copy to another machine 的步骤保存图像,以便我可以在另一台客户 PC 上使用它们。

我运行这样保存图片:

sudo docker save $(sudo docker images | sed '1d' | awk '{print  ":"  }') -o  my_project.tar 

我可以通过以下方式加载它:

sudo docker load -i my_project.tar

当我使用以下命令检查时,这似乎已经保存并加载了图像,并且所有 imaeg 确实显示了正确的名称和标签:

sudo docker images

但是目前还没有contianers 运行ning。在使用原始项目时,我如何真正以与使用 docker-compose up 命令启动相同的方式启动每个容器?

重要的是您必须docker-compose.yml文件复制到target系统。

所以你需要两件事

1: tar 包含多个图像的文件

2: docker-compose 文件来描述每个图像应该如何加载。

参考:Exporting Multiple Docker Images Alongside Docker-Compose