[Jenkins] 젠킨스란 무엇인가?

yihyun·2025년 7월 28일

Jenkins

목록 보기
1/1

Jenkins

Jenkins는 코드 변경을 자동으로 빌드, 테스트, 배포해주는 CI/CD 자동화 도구입니다.

👉 지속적 통합(Continuous Integration, CI) / 지속적 배포(Continuous Delivery, CD)

CI / CD / 파이프라인 알아보기

쉽게 설명해보면, 예를들어 개발자가 GitHub에 코드를 push했을 때
1. 젠킨스가 GitHub를 감시하고 있다가
2. 새로운 커밋 발생 시 자동으로 코드를 가져와서
3. 빌드하고 (컴파일)
4. 테스트를 실행항 후
5. 서버에 자동으로 배포를 해줍니다.

즉, 개발자가 일일이 하지 않아도 빌드, 테스트, 배포를 젠킨스가 자동으로 처리해주는 아주 편리한 도구입니다.

🚀 젠킨스의 특징

  • 🔁 자동화된 빌드 및 테스트
    ➡ Jenkins는 코드 변경을 감지하여 자동으로 빌드와 테스트를 실행합니다.
    ➡ 개발자는 커밋만 해도 최신 코드를 빠르게 검증할 수 있어, 오류를 조기에 발견하고 품질을 유지할 수 있습니다.

  • 🔌 플러그인 확장성
    ➡ 500개 이상 플러그인을 통해 Git, Maven, Docker 등 다양한 도구와 연동 가능합니다.
    ➡ 필요한 기능을 쉽게 추가해 유연하게 시스템 구성이 가능합니다.

  • ♻ 파이프라인 정의 및 빌드 흐름 관리
    ➡ 선언적 파이프라인과 스크립트 파이프라인을 지원합니다. 이를 통해 복잡한 빌드, 테스트, 배포 과정을 코드로 정의하고 관리할 수 있습니다.
  • 🖥️ 다양한 플랫폼 지원
    ➡ Windows, MacOS, Linux 등 다양한 운영체제에서 실행 가능합니다.

  • 🌐 웹 기반 UI 제공
    ➡ 웹 브라우저에서 접근 가능한 대시보드를 제공하여, 별도의 명령어 없이도 작업 상태 확인, 로그 추적, Job 설정 등을 쉽게 관리할 수 있습니다.

  • 🧵 분산 빌드 지원
    ➡ Master-Agent 구조를 통해 여러 노드에서 빌드를 병렬 또는 분산 실행할 수 있어, 대규모 프로젝트에서도 빌드 속도를 향상시킬 수 있습니다.

  • 🧪 테스트 및 코드 품질 검사
    ➡ 테스트 자동화뿐 아니라 정적 분석 도구(SonarQube 등)와 연계하여 코드 품질과 규약 준수 여부를 점검할 수 있습니다.

profile
개발자가 되어보자

0개의 댓글