CI/CD(Continuous Integration/Continuous Delivery)란?
: 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법.
기본 개념
- 지속적인 통합
- 지속적인 서비스 제공
- 지속적인 배포
새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제("통합지옥")를 해결하기 위한 솔루션. |
애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션 라이프사이클 전체에 걸쳐 지속적인 모니터링을 제공. (-> "CI/CD 파이프라인")
CI/CD
CI(Continuos Integration)
: 개발자를 위한 자동화 프로세스(지속적인 통합).
- 애플리케이션 코드의 새로운 변경사항이 정기적으로 빌드 및 테스트를 거쳐 공유리포지토리에 병합
- 여러명의 개발자가 동시에 애플리케이션 개발과 관련된 코드 작업을 할 경우 서로 충돌하느 문제를 이 방법으로 해결할 수 있다.
CD(Continuos Delivery)
: 파이프라인의 추가 단계에 대한 자동화(지속적인 서비스 제공, 지속적인 배포)
지속적인 제공
- 개발자들이 애플리케이션에 적용한 변경 사항이 버그케스트를 거쳐 리포지토리에 자동으로 업로드
- 운영팀은 이 리포지토리에서 애플리케이션을 실시간 프로덕션 환경으로 배포 가능
- 개발팀-비즈니스팀 간 가시성 및 커뮤니케이션 부족 문제 해결
- 최소한의 노력으로 새로운 코드를 배포하는 것을 목표
지속적인 배포
- 개발자의 변경 사항을 리포지토리에서 고객이 사용 가능한 프로덕션 환경까지 자동으로 릴리스
- 애플리케이션 제공 속도를 저해하는 수동 프로세스로 인한 운영팀의 프로세스 과부하 문제를 해결
- 파이프라인의 다음 단계를 자동화함으로서의 장점을 활용
'스파르타 부트캠프(spring)' 카테고리의 다른 글
[내일배움캠프_Spring] 자바 Spring 입문_스프링 시큐리티 어노테이션_230201 (0) | 2023.02.01 |
---|---|
[내일배움캠프_Spring] 자바 Spring 입문_Spring Security 주요 컴포넌트_230131 (0) | 2023.02.01 |
[내일배움캠프_spring] 주간회고 WIL - 12주차 (0) | 2023.01.30 |
[내일배움캠프_Spring] 자바 Spring 입문_OAuth_230127 (0) | 2023.01.30 |
[내일배움캠프_Spring] 자바 Spring 입문_테스트 코드 에러_230126 (0) | 2023.01.27 |