CI/CD
애플리케이션의 개발에서 보다 빠르고 짧은 주기로 애플리케이션을 배포하는 것은 중요합니다. Continuous Integration(CI) 및 Continuous Delivery or Deployment(CD)는 지속적인 통합과 지속적인 배포를 뜻합니다. 프로젝트의 규모가 커지면 자연스럽게 CI/CD의 구축이 필요해집니다. CI/CD는 하나의 자동화된 파이프라인이라고 볼 수 있습니다. 빌드, 테스트, 릴리즈, 실행과 같은 일련의 공정들을 담당자가 매번 손으로 진행하는 것은 상상하기 어렵기 때문입니다.
Continuous Integration(CI)
CI를 구현하면 새로운 코드가 정기적으로 빌드 및 테스트 후 Repository에 통합 될 수 있습니다. 통합 과정에서는 여러 작업자의 변경된 코드에 대한 충돌 문제를 해결 할 수 있어야 합니다. CI는 일반적으로 빌드, 테스트, 통합 등의 과정을 거치게 됩니다.
Continuous Delivery or Deployment(CD)
CI가 선행되어야 진행 할 수 있습니다. CI를 통과한 애플리케이션이 테스트 또는 프로덕션 환경에 배포 될 수 있기 때문입니다. 배포된 애플리케이션은 자동으로 실행되고, 지속적으로 모니터링 될 수 있어야 합니다. CD는 일반적으로 릴리즈 및 배포, 실행, 모니터링 등의 과정을 거치게 됩니다.
솔루션 활용
일반적인 기업체에서는 이미 프로젝트 단위로 CI/CD 파이프라인이 구축되어 있습니다. 만약 새로운 프로젝트의 시작과 함께 새로운 파이프라인을 구축해야 한다면 Jenkins, CircleCI, Travis, GoCD와 같은 솔루션을 이용 할 수 있습니다.
'CS & ITS' 카테고리의 다른 글
[Network/Topic] 시맨틱(Semantic), 시맨틱 웹(Semantic Web)이란? (0) | 2022.04.19 |
---|---|
[Network/Topic] 온프레미스와 웹 호스팅, 서버 호스팅, 클라우드 서버의 차이점 (0) | 2022.04.17 |
[Network/Topic] IP 주소(IP, Internet Protocol address)와 서브넷 마스크(Subnet mask) (0) | 2022.03.08 |
IP주소 127.0.0.1과 Localhost, 0.0.0.0의 차이점 (0) | 2022.03.08 |
[Network/Topic] OSI 7계층(OSI 7 Layer), TCP/IP 4계층(TCP/IP 4 Layer) (0) | 2022.01.24 |