📖 학습 목표
- 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 |