ubuntu서버 1대에 Spring Boot 프로젝트 구동 배포 pipeline 구축에 대해서 소개한다.
[참고사항]
- 개발환경으로는 사용이 가능할 수 있으나, 실제 운영환경에서는 적합하지 않습니다.
- Load Balencer가 적용되지 않으며, 접근할 수 있는 DNS 및 공인 IP가 등록되어있어야 합니다.
- Blue/Green (무중단)배포가 아닌, 배포진행중에는, 프로젝트가 중단되어버리는 방법입니다.
1] General
2] 소스 코드 관리
3] Build
(!) 정렬 순서에 맞게 동작하므로, 순서에 유의할 것.
- Execute shell
: 기존에 떠있는 java springboot 프로젝트를 제거
$ kill -9 $(ps -ef | grep 'ep-java-gradle-exam' | grep -v grep | awk '{print $2}') || true
- Invoke Gradle script
4] 빌드 후 조치
- Dspring.profiles.active: application.yml(프로퍼티)의 spring.profiles.active를 통한 환경변수 분리되어있는 경우 분기 (dev, stg, prod 등..)
- [settings.gradle의 rootProject.name] + [build.gradle의 version]가 조합되어 jar이름이 결정됨
ex) example-0.0.1-SNAPSHOT.jar
'SpringFramework > Spring' 카테고리의 다른 글
Spring - ResponseEntity (0) | 2021.10.08 |
---|---|
Spring - Mybatis FrameWork 개념 및 설정 (0) | 2021.09.30 |
Spring Package 구조와 역할 (0) | 2021.09.30 |
Spring - 자주사용하는 Annotation 정리 (0) | 2021.02.24 |
Spring - 스프링 프레임워크 기본개념 정리 (0) | 2021.02.24 |