溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

為Spring Cloud Config Server配置遠(yuǎn)程git倉庫

發(fā)布時(shí)間:2020-06-26 04:50:29 來源:網(wǎng)絡(luò) 閱讀:6710 作者:zxuqian 欄目:建站服務(wù)器

簡(jiǎn)介

雖然在開發(fā)過程,在本地創(chuàng)建git倉庫操作起來非常方便,但是在實(shí)際項(xiàng)目應(yīng)用中,多個(gè)項(xiàng)目組需要通過一個(gè)中心服務(wù)器來共享配置,所以Spring Cloud配置中心支持遠(yuǎn)程git倉庫,以使分散的項(xiàng)目組更方便的進(jìn)行協(xié)作。

基礎(chǔ)環(huán)境

  • JDK 1.8
  • Maven 3.3.9
  • IntelliJ 2018.1
  • Git

項(xiàng)目源碼

Gitee碼云

配置遠(yuǎn)程git倉庫

首先我在gitee上創(chuàng)建了一個(gè)遠(yuǎn)程倉庫https://gitee.com/zxuqian/spring-cloud-config-remote專門用來存放配置文件,然后我們會(huì)通過配置文件來訪問此倉庫。然后我們把以前本地的配置文件遷移到此庫中。為了測(cè)試效果,我們把web-client.ymlmessage的值修改為:此條消息來自于遠(yuǎn)程配置倉庫

配置configserver

現(xiàn)在在我們之前的configserver中作一些配置上的改動(dòng)。首先為了保留之前的本地倉庫的配置,我們把application.yml重命名為application-local.yml。

這個(gè)-local是一個(gè)profile,它的值是-后面的,即local,我們可以在bootstrap.yml中指定使用哪個(gè)profile。比如實(shí)際項(xiàng)目中開發(fā)階段和生產(chǎn)階段的配置有所不同,所以會(huì)有application-development.ymlapplication-production.yml等兩種或以上的配置。

然后新建一個(gè)application-remote.yml文件,添加如下配置內(nèi)容:

server:
  port: 8888
spring:
  cloud:
    config:
      server:
        git:
          uri: https://gitee.com/zxuqian/spring-cloud-config-remote
          username: 您的gitee用戶名
          password: 您的gitee密碼

因?yàn)槭亲杂觅~號(hào)的倉庫,所以就不提供賬號(hào)密碼了,改成自己對(duì)應(yīng)的。這里uri配置了遠(yuǎn)程git倉庫的地址。

最后在bootstrap.yml中啟用我們的remote profile:

spring:
  application:
    name: config-server
  profiles:
    active: remote

spring.profiles.active即指定了我們的remote Profile,使用application-remote.yml配置文件。

測(cè)試

使用spring-boot:run啟動(dòng)我們的config server,然后訪問http://localhost:8888/web-client/default,看到如下結(jié)果:

{"name":"web-client","profiles":["default"],"label":null,"version":"cbef7d379ef01d68810c3fdc2105b2226ea6c611","state":null,"propertySources":[{"name":"https://gitee.com/zxuqian/spring-cloud-config-remote/web-client.yml","source":{"message":"此條消息來自于遠(yuǎn)程配置倉庫","management.endpoints.web.exposure.include":"*"}}]}

message的值取自于遠(yuǎn)程倉庫。這里的web-client/default配置文件名/profile,因?yàn)槲覀兊膚eb客戶端項(xiàng)目沒有其他Profile,則默認(rèn)值為default,只有這樣寫全,才可以訪問到web-client.yml的配置。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI