• 如何集成 Config
    • 开发环境
    • 更改配置
    • 一个最简单的 Config Server
    • 测试
    • 源码

    如何集成 Config

    本章节,我们将创建一个micro-weather-config-server 作为配置服务器的服务端。

    开发环境

    • Gradle 4.0
    • Spring Boot 2.0.0.M3
    • Spring Cloud Netflix Eureka Client Finchley.M2
    • Spring Cloud Config Server Finchley.M2

    更改配置

    增加如下配置:

    1. dependencies {
    2. //...
    3. compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-client')
    4. compile('org.springframework.cloud:spring-cloud-config-server')
    5. //...
    6. }

    项目配置:

    1. spring.application.name: micro-weather-config-server
    2. server.port=8888
    3. eureka.client.serviceUrl.defaultZone: http://localhost:8761/eureka/
    4. spring.cloud.config.server.git.uri=https://github.com/waylau/spring-cloud-tutorial
    5. spring.cloud.config.server.git.searchPaths=config

    其中:

    • spring.cloud.config.server.git.uri:配置Git仓库地址
    • spring.cloud.config.server.git.searchPaths:配置查找配置的路径

    一个最简单的 Config Server

    主应用:

    1. @SpringBootApplication
    2. @EnableDiscoveryClient
    3. @EnableConfigServer
    4. public class Application {
    5. public static void main(String[] args) {
    6. SpringApplication.run(Application.class, args);
    7. }
    8. }

    在程序的入口Application类加上@EnableConfigServer注解开启配置服务器的功能。

    测试

    在https://github.com/waylau/spring-cloud-tutorial/tree/master/config 我们放置了一个配置文件micro-weather-config-client-dev.properties,里面简单的放置了测试内容:

    1. auther=waylau.com

    启动应用,访问http://localhost:8888/auther/dev,应能看到如下输出内容,说明服务启动正常。

    1. {"name":"auther","profiles":["dev"],"label":null,"version":"00836f0fb49488bca170c8227e3ef13a5aff2d1a","state":null,"propertySources":[]}

    其中,在配置中心的文件命名规则如下:

    1. /{application}/{profile}[/{label}]
    2. /{application}-{profile}.yml
    3. /{label}/{application}-{profile}.yml
    4. /{application}-{profile}.properties
    5. /{label}/{application}-{profile}.properties

    源码

    本章节源码,见micro-weather-config-server