본문 바로가기
개발 지식/CI, CD

02. GitHub Actions

by gamdong2 2024. 12. 17.

📖 학습 목표

  • CI/CD 구축할 때 사용할 Github Actions

1. CI/CD 구축할 때 사용할 GitHub Actions

1) CI/CD를 구축할 때 사용할 툴

  • CI/CD를 구축할 수 있는 툴에는 여러가지가 있음
    • GitHub Actions
    • GitLab CI/CD
    • Jenkins
    • Circle CI
    • Travis CI
  GitHub Actions GitLab CI/CD Jenkins Circle CI Travis CI
호스팅 클라우드 기반
(GitHub 제공)
클라우드 및 자체 호스팅 자체 호스팅 클라우드 및 자체 호스팅 클라우드 기반
빌드용 서버
구축
필요 여부
불필요 (GitHub에서 제공) 선택적 (클라우드/자체 서버 중 선택) 필요 (자체 서버에 구축 필수) 선택적 (클라우드/자체 서버 중 선택) 불필요 (클라우드에서 제공)
가격 모델 공개 리포지토리 무료
(개인 리포지토리 유료)
무료
(확장 시 유료)
무료 무료
(확장 시 유료)
무료
(개인 리포지토리 유료)
파이프라인
설정
.github/workflows의 YAML 파일 .gitlab-ci.yml 설정 파일 Jenkinsfile 코드 기반 설정 YAML 설정 파일 .travis.yml 설정 파일
통합 GitHub 마켓플레이스의 다양한 액션 GitLab과의 폭넓은 통합 다양한 플러그인 에코시스템 폭넓은 도구 지원 적절한 수준의 통합
병렬 실행 지원 지원 지원 지원 제한적

 

 

이 중에서 현업에서 사용 / 무료 / 빌드용 서버가 따로 필요없는 GitHub Actions를 활용해서 CI/CD를 구축해보자

 

 

2) CI/CD에서 Jenkins 를 활용하지 않아도 될까?

  • 현업에서 GitHub Actions 뿐만 아니라 Jenkins도 많이 활용함. GitHub Actions와 Jenkins 둘 중에 하나만 사용하더라도 필요한 CI/CD 구성을 전부 할 수 있음
  • GitHub Actions를 사용할지, Jenkins를 사용할지는 장단점을 비교하여 상황에 맞게 선택
    • Jenkins 단점: 별도의 서버에 구축해야함. 따라서 서버를 빌리는 비용 발
    • GitHub Actions 장점: 별도의 서버 구축 없이 GitHub에 내장되어 있는 GitHub Actions 기능을 사용 (비용↓, 셋팅하는 시간 ↓)

 

 

 

'개발 지식 > CI, CD' 카테고리의 다른 글

CI/CD와 무중단 배포  (1) 2024.12.19
04. [실습] GitHub Actions 기본 문법 정리  (0) 2024.12.17
03. GitHub Actions CI/CD 흐름  (0) 2024.12.17
01. CI/CD를 왜 배우는 걸까?  (0) 2024.12.17