因为eureka和config 在同一个台服务器,config注册到eureka上时,地址为 机器名,其他不同网段的服务器,拉取配置文件失败。 需要在config上 设置 优先使用 ip注册,同时写明instance-id。
网上大部分,都是写的在server上 设置优先使用ip注册,这个是不正确的。
如果设置完成,eureka 显示两个config,一个为主机名注册,一个为ip注册,那是之前主机名注册的config还没来得及注销。重启eureka 就会只显示一个由ip注册过来的config。
附上config的yml
spring:
application:
name: config
server:
port: 8888
eureka:
client:
service-url:
defaultZone: http://localhost:8761/eureka/
instance:
prefer-ip-address: true
instance-id: ${spring.cloud.client.ip-address}:${spring.application.name}:${server.port}