Spring配置中心(Spring Cloud Config)在配置了context-path後消費端無法通過eureka獲取配置的解決
阿新 • • 發佈:2018-12-22
最近研究微服務,使用Eureka搭建了註冊中心,並且使用SpringCloudConfig做配置中心
當配置中心註冊到註冊中心以後,消費端在bootstrap.yml通過以下配置即可獲取到配置資料
server: port: 8888 servlet: context-path: /config-server eureka: instance: eureka-server-name: localhost eureka-server-port: 8761 metadata-map: configPath: ${server.servlet.context-path} client: serviceUrl: defaultZone: http://${eureka.instance.eureka-server-name}:${eureka.instance.eureka-server-port}/eureka-server/eureka/
以後,卻無法正確獲取,檢視日誌發現,消費端在獲取配置時,訪問的是127.0.0.1:8888,並沒有增加/config,考慮到後期維護,寫死URL肯定不行,在查閱了很久資料以後才發現,可以在配置中心的eureka註冊部分增加如下配置
spring: application: name: config-client cloud: config: label: master profile: dev # uri: http://localhost:8888/config-server discovery: enabled: true # 表示使用服務發現元件中的Config Server,而不自己指定Config Server的uri,預設false service-id: config-server