_won_
wonprogrammer
_won_
전체 방문자
오늘
어제
  • 분류 전체보기
    • woncoding
      • TIL
      • WIL
    • source Code
      • Python
      • Programmers
      • BAEKJOON

블로그 메뉴

  • 방명록

티스토리

Github · Wonprogrammer
hELLO · Designed By 정상우.
_won_

wonprogrammer

TIL | 2.10.금 [CI/CD]
woncoding/TIL

TIL | 2.10.금 [CI/CD]

2023. 2. 13. 21:53

CI/CD

CI 란?

 

"CI"는 개발자를 위한 자동화 프로세스인 지속적인 통합(Continuous Integration)을 의미한다.

지속적인 통합이 제대로 구현되면 애플리케이션 코드의 새로운 변경 사항이 정기적으로 빌드 및 테스트를 거쳐 공유 리포지토리에 병합 할 수 있고, 또한 여러 명의 개발자가 동시에 애플리케이션 개발과 관련된 코드 작업을 할 경우 서로 충돌하는 문제가 있어도 이 방법으로 해결할 수 있습니다.

 

CD 란?

"CD"는 지속적인 서비스 제공(Continuous Delivery) 및/또는 지속적인 배포(Continuous Deployment)를 의미한다.

  • 지속적인 제공이란 : 개발자들이 애플리케이션에 적용한 변경 사항이 버그 테스트를 거쳐 리포지토리(예: GitHub 또는 컨테이너 레지스트리)에 자동으로 업로드되는 것을 뜻하며
  • 지속적인 배포(또 다른 의미의 "CD": Continuous Deployment)란 : 개발자의 변경 사항을 리포지토리에서 고객이 사용 가능한 프로덕션 환경까지 자동으로 릴리스하는 것을 의미한다.

CI/CD 파이프 라인 | CI/CD 프로세스

 

지속적 통합, 지속적 제공, 지속적 배포 → "지속적인 서비스 제공" 을 의미한다.

 

  • 지속적 통합
    • 독립적으로 작업하는 개발자가 애플리케이션에 변경 사항을 적용할 때 다른 개발자가 동시에 적용하는 변경 사항과 충돌할 가능성이 있기 때문에
    • 개발자들이 동일한 애플리케이션의 각기 다른 기능을 동시에 작업할 수 있도록 하는 것을 목표로 주기적으로 모든 소스코드를 병합해준다.

👉 따라서, 지속적인 통합을 통해 기존코드와 신규코드의 충돌과 오류를 확인하며, 버그를 더욱 빠르게 수정할 수 있게 된다.


  • 지속적 제공
    • 지속적 제공 프로세스에서는 유효한 코드를 리포지토리에 자동으로 릴리스하는 단계이다.
    • 즉, 지속적 제공의 목표는 프로덕션 환경으로 배포할 준비가 되어 있는 코드베이스를 확보하는 것입니다.

👉 지속적 제공을 완료하게 된다면 손쉽게 애플리케이션을 프로덕션으로 배포할 수 있게된다.


  • 지속적 배포
    • 프로덕션 준비가 완료된 빌드를 코드 리포지토리에 자동으로 릴리스하는 지속적 제공의 확장된 형태인 → 지속적 배포는 애플리케이션을 프로덕션으로 릴리스하는 작업을 자동화한다.
    • 즉, 지속적 배포란 개발자가 애플리케이션에 변경 사항을 작성한 후 몇 분 이내에 클라우드 애플리케이션을 자동으로 실행할 수 있는 것을 의미 

👉 이를 통해 사용자 피드백을 지속적으로 수신하고 통합하는 일이 훨씬 수월해진다. (하지만 CI/CD가 제대로 구축되려면 여러 테스트와 릴리즈 단계를 수행할 수 있어야 하기 때문에 많은 선행 투자가 필요하다.)

 

 

 

 

 

저작자표시 비영리 변경금지 (새창열림)

'woncoding > TIL' 카테고리의 다른 글

TIL | 2.14.화 [Django ↔️ PostgreSQL]  (0) 2023.02.18
TIL | 2.13.월 [Open API]  (0) 2023.02.14
TIL | 2.9.목 [Django User Model vs DRF Custom User Model]  (0) 2023.02.09
TIL | 2.8.수 [TDD | Test Code]  (0) 2023.02.09
TIL | 2.7.화 [Rest API / Fast API]  (0) 2023.02.09
    'woncoding/TIL' 카테고리의 다른 글
    • TIL | 2.14.화 [Django ↔️ PostgreSQL]
    • TIL | 2.13.월 [Open API]
    • TIL | 2.9.목 [Django User Model vs DRF Custom User Model]
    • TIL | 2.8.수 [TDD | Test Code]
    _won_
    _won_
    Coding Practice blog

    티스토리툴바