본문 바로가기

Build/Jenkins

[Infrastructure/Jenkins] 젠킨스(Jenkins)란?

젠킨스(Jenkins)란?

젠킨스는 애플리케이션 빌드 및 배포 자동화를 지원하는 MIT 라이센스 기반의 오픈 소스 서버입니다. 지속적인 통합 및 배포를 의미하는 CI/CD 툴이라고 할 수 있습니다.

  • 지속적인 통합 및 배포
    단순히 CI 서버로 사용하거나 CD 허브를 위한 서버로 확장 될 수 있습니다.
  • 멀티 플랫폼 서버
    Windows, Linux, MacOS 그리고 기타 Unix 계열 OS에서 운용 가능한 Self-contained 자바 기반 서버입니다.
  • 웹 인터페이스 기반
    구동중인 젠킨스 서버 웹 페이지에 접속하여 빌드 및 배포 관리 설정을 손쉽게 수정 할 수 있습니다.
  • 플러그인 지원
    자체적인 업데이트 센터에서 여러 기술적인 스팩에 대한 플러그인을 지원합니다.

젠킨스를 설치하려면?

도커(Docker)를 통해 설치하거나 JRE(Java Runtime Environment)가 설치된 모든 시스템에서 독립적으로 설치 및 실행 될 수 있습니다. 젠킨스 서버는 다음 OS에서 구동 할 수 있습니다.

  • Windows
  • Linux
  • MacOS
  • 기타 Unix 계열 OS

지속적이고 안정적 통합 지원

소스 코드의 지속적이고 안정적인 통합을 위해 다음 기능을 지원합니다.

  • 오류 분석
    프로젝트에서 정의하는 표준 컴파일 환경에 따른 컴파일 오류를 검출, 자동화 테스트, 정적 코드 분석으로 인한 코딩 규약 준수 검사합니다.
  • 성능 분석
    소스 코드가 변경되면 프로파일링 툴을 이용한 성능 변화를 모니터링합니다.

지속적인 배포 지원

개발자는 순수한 개발 작업 외에도 서비스 구축 및 업데이트를 위한 데이터베이스 설치, 환경 설정, 앱 배포 등의 부수적인 작업을 진행하게 됩니다. 이러한 작업을 젠킨스의 웹 인터페이스 또는 파이프라인을 통해 자동화 할 수 있습니다.

빌드 파이프라인

젠킨스는 기본적으로 웹 인터페이스 위에서 동작합니다. 하지만 복잡한 CI/CD 구축을 위해서는 세부적인 빌드 파이프라인을 구축 할 필요가 있습니다. 젠킨스를 사용하면 파이프라인을 구축하기 위한 스크립트를 직접 구현 할 수 잇습니다.

출처: https://www.jenkins.io/doc/book/pipeline/#ji-toolbar