본문 바로가기

프로그래밍팁/개발환경

[application.yml, applicationService.sh 설정] 개발환경과 운영환경, 컨터네이너별 설정

반응형

들어봤을 법한 이야기일 수도 아닐 수도 있다. spring boot에서 사용할 수 있다. 필자는 apachecamel설정이 된 spring boot에서 설정했다.

 

dbconnection은 application.yml로 설정하고 개발환경과 운영환경 구분은 applictionService.sh에 설정하면 된다.

 

서버마다 배포를 하는 방법은 여러가지이다. 그런데 설정 하나 때문에 jar파일을 재빌드 하는 수고는 덜어야 한다. 

 

application.yml에는 개발환경, 운영환경에 쓸 수 있는 dbconnection 정보가 있다. 각각 파일은 이렇다.

 

개발환경 = application-dev.yml

운영환경 = application-prd.yml

 

이렇게 yml파일을 만들고 dbconnection정보를 각 파일에 넣어둔다.

 

dev와 prd의 구분은 applicationService.sh에 설정한다.

 

개발환경은 PROFILE=dev

운영환경은 PROFILE=prd

 

이렇게 설정하면 개발환경과 운영환경의 설정을 다르게 하여 실행할 수 있다. 

 

그리고 추가로 컨테이너가 2중화 되어 있고 QUARTZ SCHEDULE을 사용해야 한다면 applicationService.sh에 설정해 주면 된다. 

 

1번 컨테이너는 10분, 30분, 50분

2번 컨테이너는 0분, 20분, 40분 

 

이렇게 1번 컨테이너와 2번 컨테이너의 applicationService.sh를 다르게 설정하면 재 빌드 없이 유지보수에도 유리하다. 

 

실행되는 시간을 수정할 일이 거의 없지만 수정한다면 해당 applicationService.sh만 수정하면 된다.

 

아래 표를 참고하길 바란다.

 

applicatin.yml 및 applicationService.sh 설정