我尝试设置一个spring cloud配置服务器,并从github上提供的示例开始。 https://github.com/spring-cloud-samples/configserver
但是我对application.yml(https://github.com/spring-cloud-samples/configserver/blob/master/src/main/resources/application.yml)配置文件感到有点困惑。它是关于profile' latice'
的覆盖部分spring:
profiles: lattice
cloud:
config:
server:
overrides:
eureka:
client:
serviceUrl:
defaultZone: ${EUREKA_SERVICE_URL:http://localhost:8761}/eureka/
instance:
hostname: $\{CF_INSTANCE_IP:localhost}
nonSecurePort: $\{CF_INSTANCE_PORT:$\{PORT:$\{server.port:8080}}}
eureka:
instance:
hostname: ${CF_INSTANCE_IP:localhost}
nonSecurePort: ${CF_INSTANCE_PORT:${PORT:${server.port:8888}}}
client:
serviceUrl:
defaultZone: ${EUREKA_SERVICE_URL:http://localhost:8761}/eureka/
为什么需要覆盖?基本上它与下面的eureka设置中定义的相同。 我也没有找到有关文档中覆盖的任何内容。
非常感谢你的帮助
干杯 弗洛里安
答案 0 :(得分:0)
它与它下面的配置并不完全相同。首先,配置服务器不会将自己的配置发送给客户端(覆盖除外)。另一方面,请注意转义(\
)以防止在发送给客户端之前解决占位符问题。这意味着客户端的eureka主机名(例如)是使用自己的CF_INSTANCE_IP
而不是服务器的值构建的。