一、创建Config配置中心项目
1.添加依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
2.启动类,需要添加@EnableConfigServer
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;
/**
* @author fusw
*/
@SpringBootApplication
@EnableConfigServer
public class ConfigCenterApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigCenterApplication.class, args);
}
}
3.配置文件
eureka.instance.appname=base-iov-config
security.user.name=test
security.user.password=test
# GitLab 的配置方式,必须有 .git 后缀
# 配置默认 git 仓库的地址
spring.cloud.config.server.git.uri=http://xxxx/config-repo.git
# git 仓库地址下的相对地址,可以配置多个,用“,”分割
spring.cloud.config.server.git.search-paths=*
#配置中心clone仓库配置文件后存放的地址
spring.cloud.config.server.git.basedir=/data/deploy/config-repo
spring.cloud.config.server.git.force-pull=true
# git 仓库的账号
spring.cloud.config.server.git.username=test
# git 仓库的密码
spring.cloud.config.server.git.password=test
# 配置 其它git 仓库的地址 spring.cloud.config.server.git.repos.x.uri, iot为例
spring.cloud.config.server.git.repos.iot.uri=http://xxxx/iot/config-repo.git
spring.cloud.config.server.git.repos.iot.search-paths=*
spring.cloud.config.server.git.repos.iot.basedir=/data/deploy/config-repo
spring.cloud.config.server.git.repos.iot.force-pull=true
# git 仓库的账号
spring.cloud.config.server.git.repos.iot.username=test
# git 仓库的密码
spring.cloud.config.server.git.repos.iot.password=test
#前缀一定要配置,用来和默认仓库区分
spring.cloud.config.server.git.repos.iot.pattern=Iot*
#注册中心
eureka.client.serviceUrl.defaultZone=http://xxx/eureka/
二、git 存放配置的仓库
创建一个git仓库用来存放各项目配置,可以在项目一级目录根据项目创建文件夹(各项目文件夹的名称可以随便起,Config配置中心只根据配置文件名找配置),然后各个项目文件夹存放不同环境的配置文件,
例如:
Iot-TestProject-dev.yml
Iot-TestProject-prd.yml
Iot-TestProject-test.yml
最好不要放置test.yml类似的默认配置,如果在各个项目配置文件中没有用spring.profiles.active指明使用的配置文件,那么会加载默认的配置文件。
三、各个SpringCloud的项目配置接入配置中心
在resource下的bootstrap.properties配置文件中,配置中心的相关配置如下
# 使用默认仓库的配置文件
spring.cloud.config.name=TestProject
# 使用iot厂库的配置文件
#spring.cloud.config.name=Iot-TestProject
#使用哪个环境的配置文件,和上面的配置配合,决定了使用哪一个配置文件:TestProject -test.yml
spring.cloud.config.profile=test
# 对应 存放配置文件仓库的git分支
spring.cloud.config.label=master
spring.cloud.config.username=test
spring.cloud.config.password=test
# 开启 Config 服务发现支持
spring.cloud.config.discovery.enabled=true
# 指定 Server 端的 name,也就是 Server 端 spring.application.name 的值
spring.cloud.config.discovery.serviceId=base-iov-config
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。