因此,我有一个非常简单的Eureka服务器和一项服务的设置。当使用tomcat在本地运行时,所有功能都可以完美运行。但是,当我在docker容器中本地运行这些文件时。该服务注册到了eureka服务器,但是每当我通过FeignClient进行http调用时,它都说该服务(无法找到服务)没有负载平衡。好像服务可以找到eureka服务器,但服务器找不到服务。再一次,只有在docker容器中运行时才会损坏。
我的Eureka服务器
spring.application.name=eureka-service
server.port=8761
eureka.client.fetch-registry=false
eureka.client.register-with-eureka=false
我的服务
spring.application.name=users-service
server.port=8081
eureka.client.register-with-eureka=true
eureka.client.fetch-registry=false
eureka.instance.prefer-ip-address=true
eureka.client.service-url.defaultZone=http://**EurekaServerIp**:8761\eureka
答案 0 :(得分:0)
我能够通过确保我的Eureka服务器,服务和Zuul网关在相同的(覆盖)泊坞网络上运行来进行修复。但是,我现在需要找到一种方法,仅使zuul网关可从网络外部访问,并保护所有服务。
编辑:我发现了一种非常简单的方法来使用docker --link公开网关并隐藏服务,这是一篇不错的文章https://exampledriven.wordpress.com/2016/06/24/spring-boot-docker-example/