https://www.leftso.com/blog/900.html
我们知道spring boot可以通过文件名来区分配置,如下:
application.yml
application-dev.yml #开发环境
application-test.yml #测试环境
application-prod.yml #正式环境
但是spring cloud用上了配置中心,就一个boostrap.yml,且不支持文件名的方式来区分。
springcloud 配置中心bootstrap.yml区分环境的办法如下:
boostrap.yml文件内容
复制spring:
profiles:
active: dev
application:
name: user-server
swagger:
api-title: 用户服务文档
url-pattern: /api/base/**
feign:
hystrix:
enabled: true
springfox:
documentation:
swagger:
v2:
path: /base/docs/info
##上面是基础配置,不用上配置中心那种
##下面是环境区分,主要不同环境不同文件获取
---
#开发环境
spring:
profiles: dev
cloud:
nacos:
discovery:
server-addr: localhost:8848
namespace: c97d4f46-deba-5588-b05f-c2a061ccc688
config:
server-addr: localhost:8848
file-extension: yaml
group: DEFAULT_GROUP
namespace: c97d4f46-deba-5588-b05f-c2a061ccc688
---
#正式环境
spring:
profiles: prod
cloud:
nacos:
discovery:
server-addr: localhost:8848
namespace: aa3de4c8-61ad-5568-9887-ed731659edd4
config:
server-addr: localhost:8848
file-extension: yaml
group: DEFAULT_GROUP
namespace: aa3de4c8-61ad-5568-9887-ed731659edd4
---
#测试环境
spring:
profiles: test
cloud:
nacos:
discovery:
server-addr: localhost:8848
namespace: 98adcdd5-f25c-7890-b8f3-97352adc83e8
config:
server-addr: localhost:8848
file-extension: yaml
group: DEFAULT_GROUP
namespace: 98adcdd5-f25c-7890-b8f3-97352adc83e8
多个配置以 --- 分开,然后通过spring.profiles=环境表示具体的环境配置