Why CI/CD?
CI/CD가 구축되어 있지 않은 환경에서의 개발은, 개발자가 build 및 서버에 직접 release 및 deploy를 관여하게 되며 거기에서 나오는 리소스는 생각보다 많이 든다. 또한, 개인이 직접 관여하기 때문에 배포 중 생기는 human error도 무시할 수 없다.
CI (Continuous Integration)
직역하면 '지속적인 통합'으로 여러명의 개발자가 작업한 변동 소스를 빌드 및 일련의 테스트를 통하여 소스 충돌 및 변경으로 생기는 문제가 없도록 보장한다.
쉽게 얘기하자면 성공적인 build 파일을 생성한다고 볼 수 있다. CD를 위한 초기 단계이다.
CD(Continuous Delivery, Continuous Deployment)
직역하면 '지속적인 서비스제공', '지속적인 배포'로 두가지 모두 의미적으로 상호작용하며, 자동화에 많은 기여를한다.
성공적인 build 파일이 생성된 후, 수동으로 build된 파일을 옮기는 것이 아닌 자동으로 운영 서버에 release를 의미한다. 또한 무사히 옮겨진 파일을 deploy까지 관여하여 자동화를 극대화 시킬 수 있다.
'CI/CD' 카테고리의 다른 글
CI/CD Tool 비교 (0) | 2023.01.29 |
---|---|
SpringBoot + Docker + EC2 배포 (0) | 2023.01.15 |