Docker有两个Web应用程序容器

时间:2015-01-02 02:07:33

标签: docker

我想为两个Web应用程序(GUnicorn / Django)设置两个容器。但我无法同时将两个容器的端口映射到端口80。在这种情况下我该如何设置?

1 个答案:

答案 0 :(得分:1)

端口号的重点是其他人可以找到您的服务。它就像一个名字 - 如果你站在两个叫Dave的人身边,你说'Dave",他们都会回答,这会让人感到困惑。所以操作系统不允许你这样做。

您的选择是:

  1. 为每个端口号提供不同的端口号,并让呼叫者指定正确的端口号。
  2. 为每个人提供不同的IP地址,并让呼叫者指定正确的IP地址。
  3. 在端口80上添加第三个服务,它可以很好地理解请求以将它们传递给正确的请求。
  4. 你必须做出这个选择。权衡是#1和#2给调用者增加了更多的开销,而#3则需要更多的工作来设置和更多的服务器负载。

    #1您可以通过发布到其他端口来完成。 #2通过不发布,并可能创建一些路由规则。 #3需要其他服务,例如HAProxy的。