nacos下载安装
- widows 进入bin目录启动
startup.cmd
- linux 进入bin目录启动
startup.sh
- 默认端口是8848(中国高度-珠峰),访问地址
http://localhost:8848/nacos/index.html
- 默认账号密码为:nacos/nacos
- 进入后是这个样子(这里事先配置了俩个config)
- 里面的内容都是相同的只是配置文件名字不同
- 配置文件创建好了接下来配置
spring-cloud
服务
Spring-Cloud 修改
-
nacos和spring-cloud是无缝集成的修改的地方不多
1.如果之前你使用的是eureka把依赖注释掉
2.加入配置中心依赖<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>${latest.version}</version> </dependency>
注意:
版本 2.1.x.RELEASE 对应的是 Spring Boot 2.1.x 版本。
版本 2.0.x.RELEASE 对应的是 Spring Boot 2.0.x 版本,
版本 1.5.x.RELEASE 对应的是 Spring Boot 1.5.x 版本。3.发现服务依赖包
<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <version>${latest.version}</version> </dependency>
注意:
版本 2.1.x.RELEASE 对应的是 Spring Boot 2.1.x 版本。
版本 2.0.x.RELEASE 对应的是 Spring Boot 2.0.x 版本,
版本 1.5.x.RELEASE 对应的是 Spring Boot 1.5.x 版本。
4.新增nacos配置属性文件bootstrap.properties
#nacos 配置中心
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
#nacos 注册中心
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
#nacos 配置文件名称
spring.application.name=cloud-producer-dev
注意:
之所以需要配置 spring.application.name ,是因为它是构成 Nacos 配置管理 dataId字段的一部分。
spring.application.name=dataId
在 Nacos Spring Cloud 中,dataId 的完整格式如下:
${prefix}-${spring.profile.active}.${file-extension}
-
prefix
默认为spring.application.name
的值,也可以通过配置项spring.cloud.nacos.config.prefix
来配置。 -
spring.profile.active
即为当前环境对应的 profile,详情可以参考 Spring Boot文档。 注意:当spring.profile.active
为空时,对应的连接符 - 也将不存在,dataId
的拼接格式变成${prefix}.${file-extension}
-
file-exetension
为配置内容的数据格式,可以通过配置项spring.cloud.nacos.config.file-extension
来配置。目前只支持 properties 和 yaml 类型。 -
如果遇到刷新取不到数据的话大多数是配置文件名称的问题,dataId后面后缀一定要是
properties
或者yaml
测试接口
@RestController
@RequestMapping("/config")
@RefreshScope
public class ConfigController {
@Value("${useLocalCache:false}")
private boolean useLocalCache;
@RequestMapping("/get")
public boolean get() {
return useLocalCache;
}
}