前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >破解在idea中无法加载spring cloud config中多环境配置之谜

破解在idea中无法加载spring cloud config中多环境配置之谜

作者头像
算法之名
发布2019-08-20 11:06:22
2.2K0
发布2019-08-20 11:06:22
举报
文章被收录于专栏:算法之名算法之名

先简单说一下spring cloud的配置中心的一些概念

Spring-cloud Config Server 有多种种配置方式,

1、config 默认Git加载 通过spring.cloud.config.server.git.uri指定配置信息存储的git地址,比如:https://github.com/xxx/config-repo

2、加载本地开发环境 spring.profiles.active=native spring.cloud.config.server.native.searchLocations=classpath:/config 所以我现在的配置大致如下(yml)

代码语言:javascript
复制
spring:
  application:
    name: config-center
  profiles:
    active: native
  cloud:
    config:
      server:
        native:
          searchLocations: classpath:/configs/{profile}
#          searchLocations: file:/d:/configs/{profile}
        git:
          uri: https://xx.com/xxx/cloud-service-configs.git
          default-label: master
          force-pull: true
          searchPaths: '{profile}'

因为配置了active: native,所以这里是使用本地配置的

我们这里有一个configs.dev的目录

而具体的微服务需要做如下配置来获取dev目录下的配置(以productprovider微服务为例)

代码语言:javascript
复制
spring:
  application:
    name: productprovider
  cloud:
    config:
      discovery:
        enabled: true
        serviceId: config-center
      profile: dev

要进行多环境配置,比如我们要建立一个local的配置

如果我们这样建立一个文件夹的话

其结果是真的建立了一个configs.local的单一文件夹,而不是在configs文件夹下面建立一个local文件夹。

在这里windows,mac下面的情况都一样,所以正确的做法是进入configs目录下,手工建立一个local的文件夹(windows请在资源管理器下操作)

将你需要的配置文件拷贝到该local目录下进行修改,再修改要启动的微服务的配置

代码语言:javascript
复制
spring:
  application:
    name: productprovider
  cloud:
    config:
      discovery:
        enabled: true
        serviceId: config-center
#      profile: dev
      profile: local

就可以在多配置环境下使用配置中心了。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
微服务引擎 TSE
微服务引擎(Tencent Cloud Service Engine)提供开箱即用的云上全场景微服务解决方案。支持开源增强的云原生注册配置中心(Zookeeper、Nacos 和 Apollo),北极星网格(腾讯自研并开源的 PolarisMesh)、云原生 API 网关(Kong)以及微服务应用托管的弹性微服务平台。微服务引擎完全兼容开源版本的使用方式,在功能、可用性和可运维性等多个方面进行增强。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档