容器化 Apache 与主机 Apache 共存

Containerized Apache co-exisitng with host Apache

我在同一台机器上的相同域和不同子域 运行 下有一些 Web 应用程序。我正在使用 Apache 虚拟主机配置为所有这些应用程序使用漂亮的 URLs。我现在正在尝试对这些应用程序之一进行 Dockerize。所以我将端口 80 和 443 暴露给主机的不同端口。

我可以使用 URL 格式成功访问容器化 Web 应用程序 http://localhost:{http exposed port} OR https://localhost:{https 暴露端口}。

现在,如果我尝试在容器中使用虚拟主机配置,除非我停止主机 Apache 服务器,否则它不会工作。

如何使用从容器内公开的端口以及同一台机器上的 运行 Apache 服务器为容器化应用程序设置漂亮的 URLs。

反向代理将是 运行 多个 docker 容器的好选择,这些容器将在不同的不同端口上公开,但将在反向代理中配置在同一端口上。 link 会有所帮助,如下所述:

https://www.digitalocean.com/community/tutorials/how-to-use-apache-as-a-reverse-proxy-with-mod_proxy-on-ubuntu-16-04

您可以尝试一件事,也就是将您的应用程序暴露在不同的 IP 上并在 /etc/hosts 中配置该 IP。请在这里查看:

http://jasani.org/posts/docker-now-supports-adding-host-mappings-2014-11-19/index.html