首页 > 解决方案 > Docker-Compose Apache ProxyPass 到另一个容器

问题描述

我有一个 docker-compose,里面有两个容器,apache 和我的应用程序我正在尝试通过 apache 将 http://localhost/myApp 路由到我的应用程序,但不断收到此错误

“获取 /myApp/HTTP/1.1” 500 531

Docker-compose 只是两个容器

version: '3'
services:
   apache:
      image: myApache
      ports:
         - 80:80
   myApp:
      image: myApp
      ports:
         - 8081:80

myApache 基于 httpd:2.4 修改 conf 来处理 ProxyPass

FROM httpd:2.4
ADD ./apache/httpd.conf /usr/local/apache2/conf/httpd.conf

httpd.conf 与基本映像中的相同,附加如下

LoadModule proxy_module modules/mod_proxy.so
<VirtualHost *:80>
   DocumentRoot /usr/local/
   ServerName localhost
   <Directory />
      AllowOVerride None
      Require all denied
   </Dictory>

   ProxyPass /myApp/ http://myApp/
   ProxyPassReverse /myApp/ http://myApp/
</VirtualHost>

据我所知, http://myApp 应该能够到达另一个容器。我也尝试过 http://myApp:8081 甚至https://www.google.com。所有人都返回500。

标签: apachedocker-compose

解决方案


推荐阅读