我试图使用泊坞窗,撰写运行2个简单的本地服务(Ubuntu的):灵光一现的服务器,并配置服务器(这也是灵光一现的客户端)。这些都具有运行java -jar
,揭露他们的港口,并分别做工精细简单dockerfiles。我也尝试添加eureka.client.service-url.defaultZone=http://company-service-discovery:8761/eureka
,看它是否会自行注册,和它的工作。
我的配置服务器不能成功地注册到尤里卡服务器,我GOOGLE了它,并没有什么我见过帮我解决这个问题。
在https://docs.docker.com/compose/networking/据码头工人,撰写文档:
默认情况下,撰写设置为你的应用程序的单一网络。为服务每个容器加入默认网络既是由网络上的其他集装箱到达,并在相同的容器名称主机名被他们发现。
通过下面的例子web
应该能够使用postgres://db:5432
与数据库进行通信。
version: "3"
services:
web:
build: .
ports:
- "8000:8000"
db:
image: postgres
ports:
- "8001:5432"
我用同样的方法来配置我的服务,但在尝试注册时,我的配置服务器获取连接被拒绝:
version: '3.3'
services:
company-service-discovery:
build: company-service-discovery/
ports:
- "8761:8761"
company-config-server:
build: company-config-server/
ports:
- "8888:8888"
links:
- company-service-discovery
server:
port: 8888
management:
security:
enabled: false
spring:
application:
name: company-config-server
cloud:
config:
server:
native:
search-locations: classpath:/shared
profiles:
include: native
eureka:
client:
service-url:
defaultZone: http://company-service-discovery:8761/eureka
spring:
application:
name: company-service-discovery
server:
port: 8761
management:
security:
enabled: false
2017-07-26 14:25:05.738 WARN 1 --- [nfoReplicator-0] c.n.d.s.t.d.RetryableEurekaHttpClient : Request execution failed with message: java.net.ConnectException: Connection refused (Connection refused)
2017-07-26 14:25:05.739 WARN 1 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_COMPANY-CONFIG-SERVER/365d20275ab0:company-config-server:8888 - registration failed Cannot execute request on any known server
有什么毛病我的配置?我怎样才能使它发挥作用?
让我知道是否有任何信息丢失,我会很乐意提供任何信息,我可以。
添加defaultZone
配置到尤里卡服务器的属性太(和更改service-url
在你的配置服务器bootstrap.yml到serviceUrl
)。
spring:
application:
name: company-service-discovery
eureka:
client:
serviceUrl:
defaultZone: http://company-service-discovery:8761/eureka
server:
port: 8761
management:
security:
enabled: false
谢谢你的sooo多。这篇文章解决了我的问题 - 尤里卡客户端连接到尤里卡服务器泊坞窗。经过搜索它的工作的2天。我流泪了。
所以基本上 -
你应该使用尤里卡客户application.properties/.yml以下
eureka.client.service-url.defaultZone = http://eureka-server:8761/eureka
在泊坞窗,compose.yml您的尤里卡服务名称应与 - URL主机名,在我的情况下,它是 - 尤里卡服务器