프로젝트/Beatn-beat [비튼 - 비트]

15. Local, Dev, Prod 설정 분리하기

코딩 악귀 2024. 2. 24. 22:02

참고자료

 

[Spring boot] @Value 어노테이션으로 application.properties의 값 가져오기

@Value Spring boot에서 제공하는 어노테이션 중 하나로, 빈(Bean) 생성 시점에 값을 주입하기 위해 사용된다. 주로 개발하면서 application.properties에 설정한 값들을 가져오기 위하여 사용되고, 개발하는

olrlobt.tistory.com

 

 

[스프링 부트, Spring Boot] 환경변수 파일(application.yml) local, dev, prod 환경 분리

[Spring Boot] 환경변수 파일(application.yml) local, dev, prod 환경 분리 스프링 부트에서 로컬(local), 개발(dev), 운영(prod) 등의 환경을 분리해야 하는 경우 profile을 활용해 설정 정보를 분리할 수 있다. profil

computer-science-student.tistory.com

 

 

[Springboot] 배포 환경 별로 설정파일 분리하기(feat. gradle)

설정 파일 분리 삽질기록

velog.io

 

 

[Spring Boot] Gradle을 이용한 Profile(개발/운영) 구분 설정

[Spring Boot] Gradle을 이용한 Profile(개발/운영) 구분 설정 개발환경 Eclipse IDE 2022-06 Spring Boot 3.0.0 Gradle 7.0 Lombok PostgreSQL 프로젝트 개발 시 실제 개발과 운영의 환경은 다를 가능성이 높다. 보다 안전한

jiurinie.tistory.com

 

 

[스프링부트] Gradle 에서 프로퍼티 / YAML / application 중복 오류 해결하기

항상 메이븐만 쓰다가 그래들 환경으로 프로그래밍 하려니 새로운 걸 자주 접하게 되서 재밌다. 스프링부트에서 application 을 프로파일 환경에 맞게 가져올 때 공통으로 사용할 기본 application 이

derveljunit.tistory.com

 

과정

배포를 하고, 개발을 마저 하니 문제가 발생했다...
local에서는 localhost의 setting이 필요하고, 배포 환경에는 그에 맞는 setting이 필요한데 매번 수동으로 바꾸기 너무나 귀찮다.
그래서 조사를 해보니 profile이 이용해서 이를 해결하는 방법이 존재 한다.
 
application.yaml을 공통적인 부분을 만들고,
따로 원하는 부분을 나누어서 작업을 할 수 있다.
 
기본적인 설정을 common으로 하고,
profile을 지정해서 yaml을 분리한다.
 

그리고 다음과 같이 입력을 준다.

./gradlew build -Pprofile=prod

 

피드백

  • 반복적이고 귀찮은 작업을 단순화 할 방법을 항상 고민할 것.
  • 보통 이런 것들은 해결책이 있기 마련이다.