4、Nacos多环境支持配置步骤_支持不同环境配置

Nacos例子下载地址:

https://gitee.com/lennon12345/nacos-example

nacos多环境支持

背景

我们在做项目开发的时候,可能会存在多种环境,并且每一种环境所设置的配置都是不同的,所以我们可能会在线上手工修改这些配置信息。同时 Spring 中为我们提供了 Profile 这个功能。我们只需要在启动的时候添加一个虚拟机参数,激活自己环境所要用的 Profile 就可以了。

操作起来很简单,只需要为不同的环境编写专门的配置文件,如:application-dev.yml、application-prod.yml, 启动项目时只需要增加一个命令参数 --spring.profiles.active=环境名称 即可。

测试环境 test

开发环境 dev

生产环境 prod

Nacos支持不同环境配置

nacos可以同时支持多环境配置。只需要在nacos配置中心中根据dataId进行区分即可。dataId 完整的拼接格式如下:

在 Nacos Config Starter 中,dataId 完整的拼接格式如下

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

1.其中 prefix 默认为 spring.application.name 的值

也可以通过配置项
spring.cloud.nacos.config.prefix来配置。

  1. spring.profiles.active 即为当前环境对应的 profile
  2. file-extension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension来配置。 目前只支持 properties 类型。
  3. 1)修改bootstrap.yml

添加:

profiles:
active: dev #开发环境 _ 多环境支持下新增

prefix: nacos-web #前缀 _ 多环境支持下新增

整体如下:

spring:
profiles:
active: dev #开发环境 _ 多环境支持下新增
application:
name: nacos-web
cloud:
nacos:
discovery:
server-addr: 192.168.22.128:8848
config:
server-addr: 192.168.22.128:8848
file-extension: yml #指定文件扩展名,默认为propertiess
prefix: nacos-web #前缀 _ 多环境支持下新增
server:
port: 9100
#健康检查
management:
endpoints:
web:
exposure:
include: "*"
#日志
logging:
level:
org.springframework.web: debug

  1. nacos中新增配置信息
  1. 访问项目后的效果:

总结:项目配置了新环境变量:active: dev后,则可以读取在nacos中配置的nacos-web-dev.yml文件