Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Text Index
- Code Presso
- STS
- 위치 기반 쿼리
- aws
- Spring
- 몽고디비
- AWS Developer
- EC2
- 스프링 부트
- Java
- AWS 자격증
- 쓰기 고려
- Amazon Web Service
- Write Concern
- Jenkins
- 읽기 고려
- NoSQL
- mongoDB
- JPA
- iam
- spring boot
- Spring Framework
- 자바
- 스프링
- java spring framework
- 대용량 아키텍처와 성능 튜닝
- 스프링 프레임워크
- 조대협
- 코드프레소
Archives
- Today
- Total
개발과 기록의 조화
[Spring Boot] application.Properties 파일 분리해서 jar 파일 실행 본문
Web Framework/Java Spring Framework
[Spring Boot] application.Properties 파일 분리해서 jar 파일 실행
dlaudtjr03 2020. 3. 3. 18:34해당 게시물은 학습 및 기록 목적으로 작성되었습니다. 사실과 다른 내용이 있을 수 있으며, 오류가 있거나 궁금한 점은 댓글이나 dlaudtjr07@gmail.com 으로 메일 주시면 감사하겠습니다.
현재 진행하고 있는 프로젝트는 젠킨스를 이용한 CI/CD를 사용 중인데, Github에 application.properties 파일을 ignore 시키면 젠킨스 쪽에서 jar파일로 압축 후 실행 시 application.properties와 같은 구성 파일이 없어서 실행이 되지 않는 불상사가 일어 날 수 있습니다. 그러한 이유로 EC2 서버에 따로 application.properties를 두어 해당 설정 파일을 읽어오도록 설정합니다.
외부 설정 파일을 불러오는 여러 가지 방법이 존재하지만, 지금은 스프링 부트 환경변수를 이용한 방법을 이용합니다.
jar 파일이 있는 디렉토리에 deploy_application.properties를 생성하고 설정합니다.
그리고 나서, 젠킨스에서 실행하는 쉘 스크립트 명령어를 수정해야 합니다.
현재 젠킨스에서 실행시키는 쉘 스크립트의 명령어입니다.
#! /bin/bash
echo "Shutting down Previous Service ... "
fuser -k 8081/tcp
echo "New Service Activate"
export BUILD_ID=dontKillMe
nohup java -jar AskAnything*.jar >> nohup.out 2>&1 &
스프링 부트에서 외부 properties 파일을 불러오는 환경 변수 명령어는 --spring.config.name={파일 이름} 입니다. 뒤에 확장자 명은 생략합니다. 변경한 명령어는 아래와 같습니다.
#! /bin/bash
echo "Shutting down Previous Service ... "
fuser -k 8081/tcp
echo "New Service Activate"
export BUILD_ID=dontKillMe
nohup java -jar AskAnything*.jar --spring.config.name=deploy_application >> nohup.out 2>&1 &
그 후 젠킨스 빌드 시 쉘 스크립트 실행 부분에서 deploy_application.properties를 주입해 실행하게 됩니다.
'Web Framework > Java Spring Framework' 카테고리의 다른 글
[Issue Tracking] STS,Eclipse ANSI Console 렉 유발 이슈 (0) | 2020.03.04 |
---|---|
[Spring Boot] JPA 연동 - JPA 기본 설정 (0) | 2020.02.02 |
[Spring Boot] JPA 연동 - 개념 이해하기 (0) | 2020.02.02 |
[Spring Boot] 아주 간단한 웹 애플리케이션 예제 작성 (0) | 2020.02.01 |
[Spring Boot] 프로젝트 구조 (0) | 2020.02.01 |
Comments