[Java] 개발 환경에 따라 각각 환경 파일 구성 방법: application.properties
adjh54
2023. 6. 7. 19:59
728x170
해당 글에서는 Spring Boot 기반 로컬, QA, 운영 환경에서 각각 다른 환경파일을 사용하는 방법에 대해서 공유합니다.
1) 개발환경
분류
이름
버전
언어
Java
11
프레임워크
Spring Boot
2.7.12
프레임워크
Spring Framework
6.0.9
의존성 관리
Gradle
7.6.1
개발 툴
IntelliJ IDEA
2023.1
API 테스트 툴
Postman
2) application.properties 파일 설정
💡 application.properties 란?
- Spring Boot 애플리케이션의 구성 속성을 설정하는 데 사용되는 파일입니다.
- 이 파일은 애플리케이션의 클래스 경로에 위치하며, 키-값 쌍의 형식으로 구성됩니다. 이 파일을 사용하면 애플리케이션의 동작을 구성할 수 있습니다. - 예를 들어, 데이터베이스 연결 정보, 로깅 설정, 서버 포트, 보안 구성 등을 지정할 수 있습니다.
# application.properties 파일
# Local (test-local), QA (test-qa), PROD (test-prd)
spring.profiles.active=test-local
💡 해당 properties 파일 내에서 spring.profiles.active 속성을 통해서 값을 지정하면 Spring Boot 애플리케이션의 프로파일을 활성하는 데 사용합니다.
💡 예를 들어 application-dev.properties 파일에 있는 속성을 application-prod.properties 파일에서 다르게 설정할 수 있습니다. 이를 통해 테스트와 프로덕션 환경에서 다른 구성을 사용할 수 있습니다. 💡 또한 properties 파일뿐만 아니라 yml 혹은 yaml 파일 형태로도 파일을 구성할 수 있습니다.
3) 각각 파일 별 yaml 파일 구성
💡 resources/config 디렉토리를 생성하고 로컬, QA, PRD 형태로 파일별로 yaml 파일을 구성하였습니다.
💡 환경파일은 아래의 환경에서 각각 필요에 따라 변경하기 쉽도록 구성한 환경 파일입니다.
파일명
분류
설명
application-test-local.yml
로컬 환경
로컬 개발 환경에서 사용하는 환경파일을 관리하는 페이지입니다.
application-test-qa.yml
QA 환경
운영 환경 이전의 QA 개발환경에서 사용하는 환경파일을 관리하는 페이지입니다.
application-test-prd.yml
운영 환경
운영 환경에서 사용하는 환경파일을 관리하는 페이지 입니다.
💡 서버의 포트만 지정을 하는 yml 파일을 구성하였습니다.
# 프로젝트의 로컬 환경 파일입니다. : test-local# Spring boot Server Configurationserver:port:8000
4) 서버 실행
1. 로컬 환경에서 로컬 파일을 참조하는 경우
# Local (test-local), QA (test-qa), PROD (test-prd)spring.profiles.active=test-local
2. QA 환경에서 QA 파일을 참조하는 경우
# Local (test-local), QA (test-qa), PROD (test-prd)spring.profiles.active=test-qa