在跟我学Spring Cloud(Finchley版)-19-配置中心-Spring Cloud Config 一节中,已实现使用Git仓库作为Config Server的后端存储,本节详细探讨如何配置Git仓库。
  
  一、占位符支持
  
  Config Server的占位符支持{application}、{profile}和{label}。
  
  示例:
  
  server:
  
  port: 8080
  
  spring:
  
  application:
  
  name: microservice-config-server
  
  cloud:
  
  config:
  
  server:
  
  git:
  
  username:
  
  password:
  
  使用这种方式,即可轻松支持一个应用对应一个Git仓库。同理,也可支持一个profile对应一个Git仓库。
  
  二、模式匹配
  
  模式匹配指的是带有通配符的{application}/{profile}名称的列表。如果{application}/{profile}不匹配任何模式,它将会使用spring.cloud.config.server.git.uri 定义的URI。
  
  spring:
  
  cloud:
  
  config:
  
  server:
  
  git:
  
  uri: https://github.com/spring-cloud-samples/config-repo
  
  repos:
  
  simple: https://github.com/simple/config-repo
  
  special:
  
  pattern: special*/dev*,*special*/dev*
  
  uri: https://github.com/special/config-repo
  
  local:
  
  pattern: local*
  
  uri: file:/home/configsvc/config-repo
  
  该例中,对于simple仓库,它只匹配所有配置文件中名为simple的应用程序,它的模式等同于simple/* 。local仓库则匹配所有配置文件中以local开头的所有应用程序的名称。
  
  三、搜索目录
  
  很多场景下,我们可能把配置文件放在了Git仓库子目录中,此时可以使用search-paths指定,search-path同样支持占位符。
  
  spring:
  
  cloud:
  
  config:
  
  server:
  
  git:
  
  uri: http://git.oschina.net/itmuch/spring-cloud-config-repo
  
  search-paths: foo,bar*
  
  这样,Config Server就会在Git仓库根目录、foo子目录、以及所有以bar开始的子目录中查找配置文件。
  
  四、启动时加载配置文件
  
  默认情况下,在配置被首次请求时,Config Server才会clone Git仓库。我们也可让Config Server在启动时就clone Git仓库,例如。
  
  spring:
  
  cloud:
  
  config:
  
  server:
  
  git:
  
  uri: https://github.com/spring-cloud-samples/config-repo
  
  repos:
  
  team-a:
  
  pattern: microservice-*
  
  clone-on-start: true
  
  uri: http://www.michenggw.com git.oschina.net/itmuch/spring-www.lezongyule.com cloud-config-repo
  
  将属性spring.cloud.config.server.www.dasheng178.com git.repos.*.clone-on-start 设为true,即可让Config Server启动时clone指定Git仓库。
  
  当然,也可使用spring.cloud.config.server.git.clone-on-start = true 进行全局配置。
  
  配置clone-on-start = true,可帮助Config Server启动时快速识别错误的配置源(例如无效的Git仓库)。
  
  小技巧
  
  将以下包的日志级别设为DEBUG,即可打印Config Server请求Git仓库的细节。我们可借助日志,更好地理解Config Server的Git仓库配置,同时,也便于我们快速定位问题。
  
  logging:
  
  level:
  
  org.springframework.cloud: DEBUG
  
  org.springframework.boot: DEBUG

跟我学Spring Cloud(Finchley版)-20-Spring Cloud Config-Git仓库配置详解 原的更多相关文章

  1. Spring Boot 2 中的默认日志管理与 Logback 配置详解

    Spring Boot在所有内部日志中使用Commons Logging,但是对底层日志的实现是开放的.在Spring Boot生态中,为Java Util Logging .Log4J2 和Logb ...

  2. Spring之旅第三篇-Spring配置详解

    上一篇学习了IOC的概念并初步分析了实现原理,这篇主要学习Spring的配置,话不多说,让我们开始! 一.Bean元素配置 1.1 基本配置 看一个最基本的bean配置 <bean name=& ...

  3. Spring Boot 2.x 快速入门(下)HelloWorld示例详解

    上篇 Spring Boot 2.x 快速入门(上)HelloWorld示例 进行了Sprint Boot的快速入门,以实际的示例代码来练手,总比光看书要强很多嘛,最好的就是边看.边写.边记.边展示. ...

  4. Spring Boot 启动(二) 配置详解

    Spring Boot 启动(二) 配置详解 Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) Spring Boot 配置 ...

  5. spring基于通用Dao的多数据源配置详解【ds1】

    spring基于通用Dao的多数据源配置详解 有时候在一个项目中会连接多个数据库,需要在spring中配置多个数据源,最近就遇到了这个问题,由于我的项目之前是基于通用Dao的,配置的时候问题不断,这种 ...

  6. 学机器学习,不会数据处理怎么行?—— 二、Pandas详解

    在上篇文章学机器学习,不会数据处理怎么行?—— 一.NumPy详解中,介绍了NumPy的一些基本内容,以及使用方法,在这篇文章中,将接着介绍另一模块——Pandas.(本文所用代码在这里) Panda ...

  7. Spring Boot 2.x基础教程:默认数据源Hikari的配置详解

    通过上一节的学习,我们已经学会如何应用Spring中的JdbcTemplate来完成对MySQL的数据库读写操作.接下来通过本篇文章,重点说说在访问数据库过程中的一个重要概念:数据源(Data Sou ...

  8. 【Spring】——声明式事务配置详解

    项目中用到了spring的事务: @Transactional(rollbackFor = Exception.class, transactionManager = "zebraTrans ...

  9. 转载 Spring、Spring MVC、MyBatis整合文件配置详解

    Spring.Spring MVC.MyBatis整合文件配置详解   使用SSM框架做了几个小项目了,感觉还不错是时候总结一下了.先总结一下SSM整合的文件配置.其实具体的用法最好还是看官方文档. ...

随机推荐

  1. Hadoop NameNode HA 和 ResourceManager HA

    1.集群规划 1.1 规划说明 hadoop1 cluster1 nameNode hadoop2 cluster1 nameNodeStandby ZooKeeper ResourceManager ...

  2. 查询表的大小(mysql)

    --所有表的大小 select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from information_schema.tables where ...

  3. Linux(Contos7.5)环境搭建之Linux远程登录(一)

    1.下载<putty-0.70cn.zip>工具包 2.解压到适合的文件夹下

  4. Python基础知识-09-函数

    python其他知识目录 1.函数介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如pr ...

  5. 用js两张图片合并成一张图片

    JS和canvas的合成方式 function drawAndShareImage(){ var canvas = document.createElement("canvas") ...

  6. Alpha冲刺——第五天

    Alpha第五天 听说 031502543 周龙荣(队长) 031502615 李家鹏 031502632 伍晨薇 031502637 张柽 031502639 郑秦 1.前言 任务分配是VV.ZQ. ...

  7. 移动平台的meta标签

    这个meta在移动平台上有非常神奇的地方. 1. <meta name="viewport" content="width=device-width; initia ...

  8. iOS- Swift:使用FMDB进行数据库操作(线程安全:增删改查)

    1.前言 GitHub上2000多颗星的FMDB数据库框架想来大家都很熟悉, 今天用Swift对其进行了一个完成的数据存储读流程 写完之后用博客分享之,与大家一起交流, 希望对需要的朋友提供些帮助   ...

  9. 在服务器中使用 Entity Framework 的 Migration 更新数据库

    在开发环境中,每次我们对要对数据库进行更改,比如增加修改表字段等.改好Entity类后,我们只需在Nuget程序包管理控制台运行 update-database 脚本却可: update-databa ...

  10. 对Excle的行和列进行检查 单元格类型转换代码 ;

    对Excle的行和列进行检查  转换代码 : ** * 导入信息 */ @Override public List<Object> add(HttpServletRequest reque ...