[Jenkins] 무중단 배포를 위한 CI/CD 파이프라인 구현 (1) - Jenkins, CI/CD 개념과 시스템 설계
서론GitHub에 코드를 푸시한 뒤, JAR 빌드, Docker 이미지 생성 및 Docker Hub에 푸시, 그리고 인스턴스를 재시작하는 과정이 너무 복잡하고 반복적이었습니다.이에 따라 CI/CD 파이프라인의 필요성을 느끼게 되었고, 이를 해결하기 위해 Jenkins를 도입하게 되었습니다.1. CI/CD 파이프라인이란?CI(Continuous Integration)- 지속적 통합개발자가 코드 변경 시 이를 자동으로 병합하고 빌드 및 테스트를 실행하여 충돌을 감지합니다.여러 개발자가 동시에 작업해도 버그를 조기에 발견하고 코드 품질을 유지할 수 있습니다.주로 빌드 → 테스트 → 병합의 순서로 진행됩니다.CD(Continous Deliver, Continous Deployment)Continuous Deli..