关于nacos:无法连接读取-nacos-配置中心及文件能踩的坑都踩了

42次阅读

共计 1221 个字符,预计需要花费 4 分钟才能阅读完成。

之前做我的项目不相熟 nacos 导致一个配置核心弄了整整一天,第二天尽管弄好了,然而又因为开发中代码出错回滚了一下,这下回滚不要紧,间接把我之前配置好的 nacos 文件也一起回滚了😓,因为遗记了上次哪里出错,又从新配了一天,能够说是网上有的没的我都踩了。。。。。

先说一下运行环境,或者因为你我的版本不一样,解决的办法也不一样

SpringBoot 版本 SpringCloud 版本 cloud Alibaba 版本
2.1.8.RELEASE Greenwich.SR6 2.1.4.RELEASE
  1. namespace 填写的是 命名空间的 ID不是名称
  2. 本地配置文件名称是 application.yml(properties)bootstrap.yam(properties) 不要因为 nacos 下面有个 yaml 选项就把后缀写的一样
  3. SpringBoot 不辨认 bootstrap 文件,须要增加依赖

    <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bootstrap</artifactId>
    <version>3.0.1</version>
    </dependency>
  4. 若要应用 @Value 读取本地配置文件,记得导入正确的包以及 @Value(${“key”}) key 为你要读取的配置名称,这能力读取到
  5. 重点!!! 在 nacos 上新建配置文件的 Data Id 不能随便乱写,依据官网文档是由这几局部组成

    ${prefix}-${spring.profiles.active}.${file-extension}

    prefix:注册在 nacos 上的服务名 spring.application.name 的值

spring.profiles.active:配置的开发环境是开发还是测试,比方 dev,test,prod 这个最好写上

prefix 和 spring.profiles.active 之间有一个 – 连接符,如果不写 spring.profiles.active 的话那么间接 prefix 和 file-extension 拼接,没有连接符

file-extension:这个和你抉择的扩展名以及本地扩展名这三个值统一👇

  1. yml 文件中留神这几个层级关系以及缩进

file-extension 的层级关系为 spring.cloud.nacos.config.file-extension 写错了会导致申请被回绝

  1. 本地配置文件的写错会导致无法访问网站申请被拒
  2. 连贯配置核心的参数须要写在 bootstrap 外面,写在 application 外面无奈连贯配置核心
  3. bootstrap 比 application 先执行,且内容无奈笼罩(具体差别网上说的挺具体)
  4. 留神连贯 nacos 的地址,如果是虚拟机启动 nacos,而在本地连接的话,地址为虚拟机地址而不是本地 localhost(127.0.0.1)

先写到这,有坑再填😇

正文完
 0