Spring Cloud Config 서버에 특정 브랜치에서 구성을 체크아웃하도록 요청하려면 어떻게 해야 합니까?
Spring cloud configuration application.yml:
spring:
application:
name: configserver
cloud:
config:
server:
git:
uri: https://xyz@bitbucket.org/xyz/microservices-configs.git
username: xyz
password: xyz
basedir: target/configs
server:
port: 8881
다음은 나의bootstrap.yml사용자 마이크로 서비스:
spring:
application:
name: userservice
cloud:
config:
uri: http://localhost:8881/
시나리오 - 1
브라우저에서 config server를 누르면 다음과 같이 됩니다.
http://localhost:8881/development/userservice-development.yml
파일도 제대로 되고요. 그리고 제가 봤을 때.basedir예를 들어, 타겟/구성, 다음과 같습니다.
- userservice.yml
- gateway.yml
바로 제가 원하던 대로, 이 두 개의 파일을 개발부에만 추가했기 때문입니다.
시나리오 - 2
다음 명령을 사용하여 사용자 서비스 마이크로 서비스 프로젝트를 실행하는 경우:
mvn clean spring-boot:run -Dspring.profiles.active=development
git에서 올바른 파일을 가져오지만 마스터 브랜치에서는 체크 아웃합니다.하지만 기대했던 대로 개발 브랜치에서는 체크 아웃을 할 수 없습니다.(참고로 마스터 브랜치에서는 개발 yml과 실가동 yml을 모두 가지고 있습니다.
여기서 문제는 config server를 어떻게 사용할 것인가 하는 것입니다.그 특정 브랜치에서만 yml을 가져오도록 설정할 수 있는 설정이 있습니까?설명서에 따르면 기본 라벨이 마스터이기 때문에 라벨을 설정해야 한다고 생각합니다.위의 시나리오에서 라벨 설정 방법을 알려주시겠습니까?
매뉴얼에 따르면 Configuration클라이언트에 설정하는 설정은 다음과 같습니다.
spring.cloud.config.label=mybranch
어디에mybranchgit repo의 기존 브랜치입니다.
클라이언트가 라벨을 지정하지 않을 경우 컨피규레이션서버가 사용하는 디폴트브런치(일반적으로 Git라벨)를 속성을 통해 지정할 수 있습니다.spring.cloud.config.server.git.default-label혹시 이게 당신이 원하는 건가요?확실히 문제 해결이 되네요!
yml 파일에서 브랜치만 사용하는 경우 다음을 구성합니다.
spring:
cloud:
config:
server:
git:
uri: https://gitlab.com/somerepo.git
username: someuser
password: somepass
default-label: branchname
프로파일을 사용하여 환경을 분리하도록 설계된 구성 서버.예:
/{application}/{profile}[/{label}]
/{application}-{profile}.yml
/{label}/{application}-{profile}.yml
/{application}-{profile}.properties
/{label}/{application}-{profile}.properties
브런치로 인해 설정의 불일치가 발생합니다.
컨피규레이션서버의 개념은 12 팩터 config(http://12factor.net/config )에 근거하고 있습니다.
자세한 이유는 확인하세요.
언급URL : https://stackoverflow.com/questions/34195002/how-to-ask-spring-cloud-config-server-to-checkout-configuration-from-specific-br
'source' 카테고리의 다른 글
| React 구성 요소의 렌더링 지연 (0) | 2023.04.02 |
|---|---|
| ui-bootstrap datepicker의 angularJs 래퍼 디렉티브를 작성하려면 어떻게 해야 합니까? (0) | 2023.04.02 |
| 반응 네이티브 응용 프로그램에서 클릭 기능이 작동하지 않습니다. (0) | 2023.04.02 |
| Mongoose 하위 문서 vs 중첩된 스키마 (0) | 2023.04.02 |
| 스프링 부트 2.1.0, 플라이웨이 4.2.0 (0) | 2023.04.02 |