使用 Docker 在 Apache 后面添加新的 Tomcat 容器
Add new Tomcat containers behind Apache with Docker
我在 Apache 后面的 Tomcat 上有一个 Java 网络应用程序 运行。我想为每个新客户启动一个新的 Tomcat 容器,但他们都在同一个 Apache 后面。每个客户端都有自己的子域,Apache 将它们代理到正确的 Tomcat 实例。这是我为一位客户的 Apache 配置示例:
sites-enabled/app1.conf:
<VirtualHost *:80>
ServerName app1.domain.com
ProxyPass / ajp://tomcat1:8009/
ProxyPassReverse / ajp://tomcat1:8009/
</VirtualHost>
然后我用 --link tomcat1
启动 Apache 容器,一切正常。
我想弄清楚如何做的是在 Apache 容器已经 运行 之后动态添加新的 Tomcat 容器,并让 Apache 正确引用它们。
问题是,即使动态添加 sites-enabled/app2.conf
到 Apache 容器,它也不起作用,因为 Apache 容器在启动时没有 --link tomcat2
,因此它不起作用'知道如何到达新的 Tomcat 容器。
除了停止 Apache 容器并使用 --link tomcat2
参数重新启动它之外,你们有什么办法让它工作吗?
链接are considered legacy and have been replaced with networks。将apache和所有tomcat个容器加入到同一个bridge network
中,实现它们之间的直接连接,然后你可以随意创建和删除tomcat个容器。
我在 Apache 后面的 Tomcat 上有一个 Java 网络应用程序 运行。我想为每个新客户启动一个新的 Tomcat 容器,但他们都在同一个 Apache 后面。每个客户端都有自己的子域,Apache 将它们代理到正确的 Tomcat 实例。这是我为一位客户的 Apache 配置示例:
sites-enabled/app1.conf:
<VirtualHost *:80>
ServerName app1.domain.com
ProxyPass / ajp://tomcat1:8009/
ProxyPassReverse / ajp://tomcat1:8009/
</VirtualHost>
然后我用 --link tomcat1
启动 Apache 容器,一切正常。
我想弄清楚如何做的是在 Apache 容器已经 运行 之后动态添加新的 Tomcat 容器,并让 Apache 正确引用它们。
问题是,即使动态添加 sites-enabled/app2.conf
到 Apache 容器,它也不起作用,因为 Apache 容器在启动时没有 --link tomcat2
,因此它不起作用'知道如何到达新的 Tomcat 容器。
除了停止 Apache 容器并使用 --link tomcat2
参数重新启动它之外,你们有什么办法让它工作吗?
链接are considered legacy and have been replaced with networks。将apache和所有tomcat个容器加入到同一个bridge network
中,实现它们之间的直接连接,然后你可以随意创建和删除tomcat个容器。