개발을 하다보면 배포환경을 나누어야할 때가 있다.
local - develop - qa - stage - prod등으로 나뉜다.
local : 단일 개발서버, 본인의 PC에서 개발 및 테스트를 위한 단계이다.
develop : 개발 단계서버, front, back-end, module등의 분업 프로젝트가 1차적으로 모이는 곳으로, 조율중 배포 싱크에 따라서 오류가 존재할 수도 있다. 물론 각자 오류를 방치하지 않고 인지 및 조치가 이루어져야 한다.
qa :품질 보증 테스트서버, dev 서버에서 정상동작이 끝난 코드만 배포되어야한다.
stage :실제 환경과 유사한 테스트서버. pord와 거의 동일한 환경에서 동일하게 동작될 수 있어야 한다.
prod :실제 서비스 환경, 고객에게 실제로 제공되는 서버
나는 우선 dev / stage만 나누어서 셋팅해보려고 한다.
1. resource 하위에 yml 파일을 나눠서 작성한다.
2. application.yml 파일에 사용할 환경을 기입한다.
spring.profiles.active에는 기본으로 사용할 환경을 적어주었다.(develop)
spring:
profiles:
active: develop
---
## develop profile
## application-develop.yml
spring:
config:
activate:
on-profile: develop
---
## stage profile
## application-stage.yml
spring:
config:
activate:
on-profile: stage
3. 환경 이름으로 작성된 파일에 기존셋팅을 입력한다.
나의 경우에는 DB연결을 dev/stage로 분리했다.
spring:
application:
name: stock
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/dev_cms // 연결부분을 변경
username: root
password: onlyroot
4. 실행
실행을 시키면 spring - profiles - active 에 기입된 환경으로 프로젝트가 실행된다.
Intellj 실행환경 변경
intellij의 경우에는 아래 옵션으로 환경도 설정할 수 있다.
이 설정은 spring.profiles.active에 설정했던 설정보다 우선해서 적용된다.
'Back-End > JAVA' 카테고리의 다른 글
Spring 프로젝트 시작하기 - 보안 ) Jwt Token 쿠키 발급 (1) | 2024.11.14 |
---|---|
Spring 프로젝트 시작하기 - 예외처리편 (0) | 2024.11.13 |
Spring 프로젝트 시작하기 - DB 연결(JPA) (0) | 2024.11.11 |
Spring 프로젝트 시작하기 - 구조설계 및 테스트편 (1) | 2024.09.25 |
Spring 프로젝트 시작하기 - 생성편 (0) | 2024.09.24 |