首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >apache2 :根据url重定向到IP地址(容器地址)

apache2 :根据url重定向到IP地址(容器地址)
EN

Stack Overflow用户
提问于 2017-10-24 17:55:43
回答 1查看 744关注 0票数 2

上下文:

我有一个带apache2的Debian。我可以通过以下ip访问这个Debian : 192.168.12.28。

在这个Debian上,我有两个容器,其中包含以下ips:

-172.18.0.2

-172.19.0.2

有问题的:

我想从外部访问我的container1,例如: 192.168.12.28/container1或myDomain/container1

我尝试过的:

两个域:具有以下test1.domain.fr.conf的test1.domain.fr:

代码语言:javascript
复制
<VirtualHost *:80>
  ServerName test1.domain.fr

  ProxyPass / http://172.18.0.2:8080/
  ProxyPassReverse / http://172.18.0.2:8080/
  ProxyRequests Off
</VirtualHost>

使用以下test2.domain.fr.conf的test2.domain.fr:

代码语言:javascript
复制
<VirtualHost *:80>
  ServerName test2.domain.fr

  ProxyPass / http://172.19.0.2:8080/
  ProxyPassReverse / http://172.19.0.2:8080/
  ProxyRequests Off
</VirtualHost>

我已通过以下方式启用该域:

代码语言:javascript
复制
a2ensite test1.domain.fr
a2ensite test2.domain.fr

我所拥有的:

当我想访问192.168.12.28 :Apache的页面"it works!“

当我想访问192.168.12.28/test1.domain.fr或192.168.12.28/test2.domain.fr时:在此服务器上找不到请求的URL /test1(或2).domain.fr。

当我想访问test1.domain.fr或test2.domain.fr时:找不到test1(或2).domain.fr

感谢您的帮助并为我的英语道歉!:-)

编辑:我目前正在搜索,但我现在不能让它工作!

编辑:我的container1配置为:"8081:8080“和"444:443”,我的container2配置为:"8080:8080“和"443:443”

编辑以下是我的docker合成文件:

第一个容器:

代码语言:javascript
复制
version: '2'

services:
  php:
    build: php
    ports:
    - "8080:8080"
    - "443:443"
    volumes:
    - ./php/www:/var/www/html

第二个容器:

代码语言:javascript
复制
version: '2'

services:
  php:
    build: php
    ports:
    - "8081:8080"
    - "444:443"
    volumes:
    - ./php/www:/var/www/html
EN

回答 1

Stack Overflow用户

发布于 2017-10-24 20:37:07

如果它是单个Docker主机(例如,不在集群模式下)您不能将两个容器映射到同一个主机端口...试试这个:

代码语言:javascript
复制
docker run <...> -p 3000:80 <...>   # e.g. for test1
docker run <...> -p 5000:80 <...>   # e.g. for test2

并相应地调整ProxyPassProxyPassReverse,例如:

代码语言:javascript
复制
ProxyPass / http://172.18.0.2:3000/     # e.g. for test1
ProxyPass / http://172.19.0.2:5000/     # e.g. for test2

参考(带有一个完整的例子,nginx作为apache的代理):https://www.digitalocean.com/community/questions/how-to-bind-multiple-domains-ports-80-and-443-to-docker-contained-applications

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46907451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档