728x90
반응형
GitLab CI/CD 소개 및 학습 환경 구축
CI/CD 란?
: 지속적인 통합, 지속적인 배포
> 소프트웨어 개발 협업의 중심에 있다. CI/CD를 이용해서 개발, 빌드, 테스트, 프로덕트 배포의 전체 과정을 자동화된 파이프라인으로 구축하고, 이 파이프라인을 통해서 각 팀이 협업을 한다.
CI/CD 학습을 위해서는 운영체제, 개발환경, Docker, AWS Cloud 등 여러가지 것들이 준비되어야 한다.
CI/CD환경은 협업의 기본적인 환경이다.
CI/CD는 통합하고 배포하기 위한 프로세스이다.
핵심은 자동화!
코드를 작성 > 하나로 패키징 > 검증 및 QA > 배포
CI : 지속적인 통합 - 코드 개발 및 패키징
CD : 지속적인 배포 - 통합 패키지를 배포, 사용자에게 제공 (cloud나 k8s(쿠버네티스)에 배포)
이 모든 과정을 예전에는 수작업 > 현재는 자동화(continuous)
> 이 전체 과정을 조율하는 소프트웨어 : Git Lab
CI (Continuous Integration)
- 자동 빌드 : 새로운 변경사항이 있을 때, 자동으로 빌드를 수행
- 자동 테스트 : 빌드 후에는 자동으로 테스트가 실행
CD (Continuous Delivery)
- 자동 테스트 : 배포 전 품질을 보장하기 위한 자동화된 테스트
- 자동 베포 : 테스트 후 자동으로 목표지점으로 배포
> tar.gz, docker image, install file 등을 하나로 패키징하여 성능/보안 검사(테스트) 후 cloud/ data_center/ kubernetes 등으로 배포
GitLab
: CI/CD 프로세스를 자동화하기 위한 오픈소스 자동화 도구.
- 자동 빌드
- 자동 테스트
- 자동 배포
- 웹 기반 사용자 인터페이스
- 자동화 스크립트 제공
왜 깃랩 이어야 하는가?
- 오픈소스
- 자체 git 저장소를 제공
- 통합된 환경 제공
- 다양한 플러그인 제공 (쿠버네티스, 보안 요구사항 점검 플러그인, gcp, aws 등)
- 활성화된 커뮤니티 (안정성, 안전성)
- 자체 호스팅(데이터센터에 직접 설치하여 사용가능) 가능
- Issue 관리 툴
728x90
반응형
'기타' 카테고리의 다른 글
[스킬업] Docker 기반 CI/CD 파이프라인 구축하기 4주차 (0) | 2024.12.22 |
---|---|
[스킬업] Docker 기반 CI/CD 파이프라인 구축하기 2주차 (0) | 2024.12.21 |
[Docker] 도커 컨테이너 통신하기 (1) | 2024.10.27 |
[Docker] 도커 기본 개념 (3) | 2024.10.26 |
[Docker] 컨테이너 생성 및 실행 명령어 (3) | 2024.10.07 |