SpringCloud實戰之初級入門(三)— spring cloud config搭建git配置中心


1.環境介紹

上一篇文章中,我們介紹了如何利用eureka注冊中心發布服務以及調用服務,有興趣的小伙伴可以去看看我的前兩篇文件。
本篇文章我們介紹如何利用spring config sever配合github搭建配置中心,請准備github的賬號一個,或者自建git環境也行。

2.配置中心

2.1 創建工程

和前面一樣,創建一個名為“mirco-service-config”的工程,在pom文件中加入

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-config-server</artifactId>
		</dependency>

2.2 修改配置文件

server:
  port: 7001

spring:
  application:
    name: service-config-server
  cloud:
    config:
      server:
        git:
          uri: https://github.com/yb2020/spring-cloud-study-example.git
          username: your github username
          password: your github password
          search-paths: mirco-service-config

參數介紹
uri: github對應的repository
username: github的賬號
password: github的密碼
search-paths: 對應repository的配置文件目錄

2.3 在github中加入配置文件

在github中加入目錄mirco-service-config,我們將上一個工程“mirco-service-consumer”的配置文件內容加入一個名為“consumer-test.yml”,並提交。文章中只講這一個改造,視頻中會改造多個工程。

2.3 修改啟動文件

  1. 在啟動文件中加上"@EnableConfigServer"注解,然后啟動工程。

  2. 打開瀏覽器訪問http://localhost:7001/consumer/test,可以看到如下圖內容,說明配置中心已經成功配置完成。

{
	"name": "consumer",
	"profiles": ["test"],
	"label": null,
	"version": "cd27a62ff16b45d1f9aed89fa338cd9671069c19",
	"state": null,
	"propertySources": [{
		"name": "https://github.com/yb2020/spring-cloud-study-example.git/mirco-service-config/consumer-test.yml",
		"source": {
			"server.port": 8002,
			"spring.application.name": "service-consumer",
			"eureka.client.service-url.defaultZone": "http://localhost:9001/eureka/"
		}
	}]
}

3. 訪問配置中心

接下來,其他微服務改造一下,將配置改為從配置中心獲取,我們以"mirco-service-consumer"工程為例。

  • 因為我們已經將配置內容放到名稱"consumer-test.yml"文件中,將工程中的application.yml文件刪除或者改后綴為“yml1”,因為applicaiton.yml是springboot啟動時會默認讀取的配置,為了看到效果,我們刪除。

  • 在pom文件中加入

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>
  • 添加“bootstrap.yml”文件,內容如下:
spring:
  cloud:
    config:
      name: consumer #對應你的配置文件名稱
      uri: http://localhost:7001
      profile: test #對應配置文件的test、dev、pro
      label: master #對應git的branch
  • 因為我們已經將application.yml刪除了,所以我們添加以下測試代碼,測試我們是否連接上了配置中心。
@RestController
public class MyFristConfigController {
	
	@Value("${server.port}")
	private String port ;
	
	@RequestMapping(value="/getPort", method=RequestMethod.GET)
	public String getPort() {
		return port ;
	}
}
  • 依次啟動"mirco-service-config","mirco-service-consumer",訪問"http://localhost:8002/getPort",可以看到我們從github的配置文件中取出的端口號。

4.一點點重要的事情


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM