【发布时间】:2018-10-25 13:41:48
【问题描述】:
我在 Docker 容器中运行 Traefik,而 Wildfly 在其他容器中。
我在 Wildfly 的 docker-compose.yml 中有以下标签:
- "traefik.web.port=8080"
- "traefik.web.frontend.rule=Host:temporary_wildfly_hostname"
- "traefik.admin.port=9990"
- "traefik.admin.frontend.rule=Host:temporary_wildfly_hostname;PathStrip:/console/"
我可以访问位于端口 8080 中的主要 Wildfly。我尝试了多种方法来访问端口 9990 中的服务,但唯一真正有效的是当我使用不同的主机时,这不是什么我要。
我试过了:
- 添加了“traefik.frontend.passHostHeader=true”(即使 .admin 在 .frontend 之前)
- 用 PathPrefixStrip、Path PathStripRegex 甚至 PathPrefixStripRegex 切换 PathStrip
Wildfly 的管理控制台使用端口 9990,从 :8080/console 重定向,也使用 :9990/console/*,因此 /console 本身是多余的,它会显示“重定向过多”错误。
我真的认为这个 /console 循环错误是某种问题。我一直在网上搜索其他反向代理的替代配置,看看我是否遗漏了什么,但都与我已经尝试过的标题有关。
关于如何解决这个问题的任何提示,保持相同的 URL,但仍重定向到与主服务不同的端口?
非常感谢您的时间和帮助。
最好的问候,
路易斯·纳拜斯
【问题讨论】: