본문 바로가기

프로젝트 & TIL/일별 공부 기록 (백엔드 스쿨)

62일차 - 젠킨스 개요

젠킨스(Jenkins)

  • 젠킨스(Jenkins)는 지속적 통합(Continuous Integration, CI) 및 지속적 전달(Continuous Delivery, CD)를 지원하는 오픈 소스 자동화 도구입니다.
  • 개발자들이 소프트웨어 개발 과정에서 반복적인 작업들을 자동화하여 개발 생산성과 품질을 향상시킬 수 있도록 도와줍니다.
  • 젠킨스는 다양한 프로그래밍 언어와 프레임워크를 지원하며, 소스 코드 컴파일, 테스트 실행, 정적 분석, 배포 등의 작업을 자동화할 수 있습니다.
  • 개발자들은 코드 변경을 버전 관리 시스템(Git, Subversion 등)에 커밋하면, 젠킨스는 이를 감지하고 지정된 작업들을 자동으로 실행합니다.
  • 젠킨스는 사용자가 웹 인터페이스를 통해 다양한 작업을 구성하고 관리할 수 있습니다.
  • 이 작업들은 빌드 단계, 테스트 단계, 배포 단계 등으로 구성될 수 있으며, 개발자들은 작업 간의 의존성과 실행 조건을 설정할 수 있습니다.
  • 예를 들어, 새로운 코드 커밋이 있을 때마다 자동으로 빌드하고 테스트를 실행하여 결과를 확인할 수 있습니다.
  • 또한, 젠킨스는 다양한 플러그인을 지원하여 기능을 확장할 수 있습니다.
  • 이를 통해 젠킨스는 다양한 도구와 시스템과의 통합이 가능하며, 사용자의 요구에 맞게 유연하게 구성할 수 있습니다.
  • 예를 들어, 이메일 알림, Slack 알림, 자동화된 배포 스크립트 실행 등을 플러그인을 통해 구현할 수 있습니다.
  • 젠킨스는 많은 기업과 개발자들에게 널리 사용되고 있으며, 지속적인 통합과 전달을 위한 핵심 도구로 인정받고 있습니다.
  • CI/CD의 원칙을 따라 개발 프로세스를 자동화하고 효율적으로 관리할 수 있는 젠킨스는 개발자 커뮤니티에서 높은 인기를 얻고 있습니다.
  • 젠킨스 대신 GITHUB ACTION 이라는 기술을 이용해도 됩니다.(다만 공개 프로젝트가 아니라면 유료입니다.)

젠킨스를 이용한 CI/CD 활용

- 빌드 자동화

- 테스트 자동화

- 배포 자동화

- 모니터링 및 로깅