카테고리 없음

Spring Profile

happyst 2024. 6. 9. 17:24
Spring Profile
  • 어플리케이션 설정을 특정 환경에서만 적용되게 할 때 사용
  • 개발 환경 단계 (Local, Dev, Prod) 별로 다르게 이용할 때 사용
  • Spring Boot는 어플리케이션이 실행될 때 자동으로 application.properties 또는 application.yml을 찾는다
    • application.properties와 application.yml를 동시에 사용하지 않도록 주의하자.
      application.properties가 항상 나중에 로드되기 때문에 yaml에 정의한 profile 설정이 덮어 씌어질 수 있기 때문!
    • application.properties 파일 위치: {root}\src\main\resources\application.properties

application.properties 파일을 삭제 후, application.yml 파일 생성

spring:
  profiles:
    active: local # default
    group:
      local:
        - common
      prod:
        - common

---
spring:
  config:
    activate:
      on-profile: common

# ...

---
spring:
  config:
    activate:
      on-profile: local

---
spring:
  config:
    activate:
      on-profile: prod

 

  •  '---' 을 사용하여 각 profile을 구분하는 것으로 다중 profile을 설정할 수 있음
  • spring.profiles.group을 사용하여 여러 profile들을 하나의 그룹으로 묶어서 하나의 profile로 만들 수 있음

 

어플리케이션 실행 시, local, common profile이 실행된 것을 확인함

// active: local 이므로 local profile이 실행됨

// group.local = common이므로 local profile 실행 시 common profile도 같이 실행됨