Please enable JavaScript.
Coggle requires JavaScript to display documents.
CI/CD 파이프라인 구축에
왜 Jenkins를 활용했나요?, Jenkins, CD?, CI?, 무중단 배포?, 목적?,…
-
Jenkins
Jenkins의 가장 큰 강점 중 하나는 다양한 플러그인 지원입니다. Jenkins는 Git, Docker, Maven, Gradle 등 약 2천 개의 플러그인을 통해 기능을 확장할 수 있어, 거의 모든 개발 환경에 쉽게 통합할 수 있습니다. 예를 들어, Jenkins를 Git과 연동하면 코드가 푸시될 때마다 자동으로 빌드를 수행할 수 있어, 코드 변경 사항이 즉시 반영되어 더 빠른 피드백을 받을 수 있습니다.
Jenkins의 파이프라인 기능과 플러그인 생태계를 활용하면 컨테이너 빌드, 이미지 푸시, 쿠버네티스 배포 등의 과정을 자동화할 수 있어, 컨테이너화 및 쿠버네티스 통합을 더욱 빠르게 구현할 수 있습니다.
SonarQube, OWASP Dependency-Check 등 보안 도구를 파이프라인에 쉽게 통합할 수 있어 개발부터 배포까지 전 과정에서 자동화된 보안 검사를 수행합니다.
웹 애플리케이션 개발에서 코드 푸시 이후 빌드, 테스트, 배포까지의 반복 작업을 자동화해 개발 효율을 크게 향상시킵니다.
20년 가까이 쌓아온 오픈소스 생태계를 바탕으로, 수천 개의 플러그인과 방대한 커뮤니티 문서를 보유하고 있어 문제 해결과 학습이 매우 용이합니다.
직관적인 웹 기반 UI를 제공하여 프로젝트 설정과 빌드 관리를 손쉽게 수행할 수 있습니다. 대시보드를 통해 빌드 대기, 실행, 성공/실패 상태를 시각적으로 확인할 수 있어 개발자는 물론 비개발자도 현재 프로젝트의 진행 상황을 한눈에 파악할 수 있습니다.
-
설치 직후 기본 보안 설정이 미흡해, 관리자 계정 생성, 접근 제어, 비밀번호 정책 등을 수동으로 설정해야 합니다. 설정을 소홀히 하면 코드 유출, 무단 빌드 실행 등의 보안 위험이 발생할 수 있습니다
다양한 기능을 플러그인으로 확장하지만, 과도한 플러그인 설치는 충돌, 보안 취약점, 성능 저하의 원인이 될 수 있습니다.
꼭 필요한 플러그인만 사용하고 주기적으로 업데이트해야 합니다
빌드와 테스트 과정에서 많은 리소스를 사용하므로, 서버 성능과 병렬 처리 설정을 잘 조정해야 합니다.
빌드 큐가 길어지면 전체 파이프라인 속도에 영향을 줄 수 있습니다.
Jenkins는 오픈 소스 기반의 자동화 서버로, 소프트웨어 개발의 CI/CD 파이프라인을 구축하고 실행하기 위해 사용되는 도구입니다
-
-
-
-
-
-
-
-
-
-
-
-
jenkins는 빌드 리소스를 직접 관리해야 하며, 병렬 처리나 대기 큐 튜닝이 필요
jenkins는 Job 간 의존성, 분기 조건, 파라미터 전달 등 고급 설정 자유로움
-
온프레미스, 사내망에서도 운영 가능하며 보안 정책을 직접 적용 가능
-