[CI,CD] 젠킨스, Github Action 비교

Dong·2025년 3월 19일
post-thumbnail

비교 대상 선정

저는 현재 기술을 선택할 때 기술 선택 도구 1을 우선시하고, 이후에 2,3번을 번걸아가며 사용한다. 취업을 희망하는 대부분의 회사들의 사용 기술 스택에 젠킨스와 Github Action가 있다 따라서 Travis와 Gitlab 등 유명한 CI/CD 툴을 먼저 배제했다.물론 Gitlab과 Travis를 잘 사용한다면 다른 툴들도 잘 사용할 가능성이 높지만 현업에서 사용하고 있는 툴이라는 좋은 선택지가 있으니 이를 두고 타 선택지를 고려할 이유는 없다고 생각했다.

기술 선택 도구

  1. 제가 가려고 하는 회사들이 어떤 기술을 사용하는가?

  2. 신입에게 요구되는 역량이 무엇인가?

  3. 기술의 장단점이란?

🕴️젠킨스

  • 젠킨스는 자동화된 CI, CD 환경을 제공해주는 오픈소스 서버이다. 젠킨스는 빌드와 배포 및 프로젝트 자동화를 도와줄 수많은 플러그인을 제공

📤장점

  • CI/CD 기능 제공
  • 쉬운 설치
  • 웹 인터페이스를 활용한 쉬운 설정
  • 수많은 플러그인 존재
  • 확장 가능성

📥단점

  • 젠킨스를 위한 서버를 띄워야함.
  • 플러그인이 너무 많아서 기술 선택하기가 어려움.
  • 초기 설정 값이 많음.

출처: https://www.jenkins.io/

💁‍♂️Github Action

  • CI/CD와 같은 소프트웨어 workflow를 자동화 시켜주는 툴. 깃허브에서 빌드, 테스트, 배포를 모두 할 수 있음. 깃허브 이벤트를 트리거로 사용함.

📤장점

  • CI/CD 기능 제공
  • 깃허브의 이벤트와 연동이 매우 용이.
  • 다양한 운영체제에서 병행 빌드가 가능함.
  • Supports Any launguage
  • docker-compose를 이용한 다중 컨테이너 환경 구축.
  • 무설치, 초기 설정 부담 적음.

📥단점

  • Jenkins에 비해 적은 플러그인 종류

출처: https://github.com/features/actions

📌선택

결과: Github Action

이유

  • 무설치, 초기 설정 부담 적음
    • 신입 개발자를 준비하고 있기 때문에 CI/CD 과정을 경험하는게 중요하다고 생각함. 따라서 초기 설정 부담이 적은 Github Action을 이용하는게 학습 목적에 부합하다고 판단.
  • 깃허브 이벤트와 연동이 매우 용이함.
    • 깃허브 내부에 존재하는 툴이기 때문에 푸시, PR, 이슈 등 깃허브 이벤트들과 연동이 쉬움. 그만큼 Customizing할 요소가 많다는 뜻.
profile
소통을 잘하는 백엔드 개발자가 되기 위해, 꾸준히 성장하고 기록중입니다.

0개의 댓글