如何在不同主机之间移动docker容器

我找不到将docker运行容器从一台主机移动到另一台主机的方法。

有什么办法可以像我们这样做的图像推我的容器回购? 目前我没有使用数据卷来存储与容器内运行的应用程序相关的数据。 所以有些数据驻留在我想在重新devise设置之前要坚持的容器中。

任何帮助表示赞赏。

您不能将正在运行的Docker容器从一台主机移动到另一台主机。

您可以使用docker commit将容器中的更改提交到图像,将图像移动到新的主机上,然后使用docker run启动一个新的容器。 这将保留您的应用程序在容器内创build的任何数据。

或者,如果您不希望推送到存储库:

1)将容器导出到tarball

  docker export <CONTAINER ID> > /home/export.tar 

2)移动你的tarball到新机器

3)将其导回

  cat /home/export.tar | docker import - some-name:latest 

从Docker文档:

docker export不会导出与容器关联的卷的内容。 如果将卷安装在容器中的现有目录之上,则docker export将导出基础目录的内容,而不是卷的内容。 有关在卷中导出数据的示例,请参阅用户指南中的“ 备份,还原或迁移数据卷” 。

其他外部工具:为了移动与相关数据量的容器,您可以使用Flocker https://clusterhq.com/flocker/introduction/