如何在不同的机器上运行docker容器

我为我的应用程序安装了几个docker容器:

  1. mysql的容器
  2. 应用程序服务器容器(tomcat7)
  3. Nginx的容器
  4. python龙卷风应用程序的容器

在我的本地机器上,使用docker-machine ,我尝试了所有这些容器,并且它们互相交互。 我用boot2linux创build了一个virtualbox机器,并在其上设置了所有这些容器。

现在,为了生产,我将在单独的服务器上运行这些容器中的每一个。 docker提供的东西是否可以快速/轻松地做到这一点? 还是应该在每个服务器上设置docker,将相关的图像复制到该服务器,然后在所有服务器上手动启动docker-images?

还是应该在每个服务器上设置docker,将相关的图像复制到该服务器,然后在所有服务器上手动启动docker-images?

是的,但你也应该:

  • 创build相关的libnetworks为了让你的容器在其中注册
  • 创build一个KV(容器:领事,等等,Zookeeper,…)的第一个容器,它将监视每个networking(/机器)中的每个容器,允许他们看到对方。
    注意:您可能希望使用docker 1.10将networking范围的别名添加到容器中 。

https://docs.docker.com/engine/userguide/networking/images/overlay_network.png

然后你可以在你的机器上创build你的容器。

在Understanding Docker容器networking上查看实际示例