스프링 클라우드 컨피그(Spring Cloud Config)는 애플리케이션 구성 데이터를 외부화하여 중앙에서 관리합니다. 환경별 구성은 서비스 인스턴스와 분리되어 저장되므로, 어떤 수의 마이크로서비스 인스턴스가 배포되더라도 일관된 구성 상태를 유지할 수 있습니다.


src/main/java/…/configserver/ConfigserverApplication.java
@EnableConfigServer 애너테이션을 적용하여 스프링 클라우드 컨피그 서비스로 활성화 한다.
package com.codefactory.configserver;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;
@EnableConfigServer
@SpringBootApplication
public class ConfigserverApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigserverApplication.class, args);
}
}
파일 시스템 기반의 저장소를 사용하는 경우 (native)
/src/main/resources/application.yml
server:
port: 3100
spring:
application:
name: config-server
profiles:
active: native
cloud:
config:
server:
native:
search-locations: file:///{FILE_PATH}
native는 클라우드 컨피그 서버용으로만 생성한 프로파일이며, 구성 파일을 클래스 패스나 파일 시스템에서 검색하고 읽도록 지시하는 프로파일
{FILE_PATH} : 파일 시스템에서 설정 파일이 있는 경로
search-location:
server:
native:
search-locations: classpath:/config
classpath 속성을 사용하면 스프링 클라우드 컨피그 서버는 src/main/resources/config 폴더를 찾는다.
설정 파일명 규칙