我遇到了麻烦,让Zuul在一个被移植的Spring引导应用程序中工作。看起来Zuul无法将请求代理到目标应用程序(gis_import_export),即使它已经启动并运行。
基于Zuul的Spring应用程序配置:
spring:
banner:
location: classpath:banner.txt
zuul:
debug:
request: true
routes:
ie:
url: http://gis_import_export:8080
geoserver:
url: http://geoserver:8080
geonetwork:
url: http://geonetwork:8080
ribbon:
eureka:
enabled: false和我的对接者-Compose.yml文件
version: "3"
services:
geoserver:
image: kartoza/geoserver
geonetwork:
image: geonetwork
postgres:
image: postgres
environment:
- POSTGRES_DB=xxx
- POSTGRES_PASSWORD=xxx
- POSTGRES_USER=xxx
gis_import_export:
image: gis_import_export:develop
ports:
- 8888:8080
zuul:
image: gis_api_gateway:develop
ports:
- 8080:8080我能够通过Zuul服务公开端口正确地代理geonetwork/geoserver,但是我只能继续使用Spring应用程序,似乎没有得到代理。顺便说一句,如果通过8888端口访问并通过Zuul (如果zuul本身没有通过Docker部署)的话,那么dockerized引导应用程序就会像预期的那样工作。
在Zuul docker容器中运行ping/telnet到应用程序就像预期的那样工作,因此名称被正确解析。
想法?
谢谢,FB
发布于 2018-06-04 13:09:36
您的服务在不同的码头网络中运行。您必须在两个文件网络中指定相同的网络。
当然,如果为每个容器指定hostname参数,那就更好了。
https://stackoverflow.com/questions/50675799
复制相似问题