从网上搜搭建教程,都差不多。现在总结一下问题 1.项目启动不来。是springboot版本和springcloud版本不一致。之前cloud用的Finchley.SR2,对应的config-server是2.0.0版本的导致不能启动。都换成2.1.X版本的就行了 spring-boot-starter-parent 版本 2.1.3.RELEASE org.springframework.cloud 版本 Greenwich.RELEASE 2.config-client启动完成获取不到配置,启动的时候报错。Could not resolve placeholder,这是由于没能从配置中心获取配置。这个是客户端的启动报错。解决办法,把客户端的application.yml修改成bootstrap.yml启动成功,也能找到配置了 3.动态刷新,以前的/refresh失效了,需要用下面的地址。刷新客户端,或者服务端都行 刷新网址http://localhost:9207/actuator/bus-refresh,管用 * http://localhost:9208/actuator/refresh 管用post方式 * 参考https://blog.youkuaiyun.com/z591045/article/details/89177247
4.客户端虽然是从配置中心获取配置,但是也需要给定注册中心的地址,和配置文件名字
给出客户端配置
#然后在resources目录下创建bootstrap.yml文件,并在配置文件中添加如下内容:
#这个配置文件的名字必须是bootstrap.yml,否则启动报错 参考https://www.cnblogs.com/zuowj/p/10432445.html
eureka:
instance:
hostname: localhost
preferIpAddress: true
instance-id: ${spring.application.name}:${spring.cloud.client.ip-address}:${server.port}
client:
serviceUrl:
defaultZone: http://user:123@127.0.0.1:10001/eureka/
spring:
cloud:
config:
name: user #对应config server Url中的{application}
profile: dev # 指定配置文件的环境
#label: trunk #配置分支(不配置则默认:git则是master,svn则是trunk),
# 地址寻找
# uri: http://localhost:9207 #配置中心地址
discovery:
enabled: true
service-id: springboot-config-server # 注册中心的服务名
bus:
trace:
enabled: true # 开启mq的日志追踪
rabbitmq:
host: 192.168.90.63 #:5672
port: 5672
username: guest
password: guest
security: #
basic:
enabled: false
# 允许/actuator/bus-refresh接口被外部调用
management:
endpoints:
web:
exposure:
include: '*'