달마루
기획자에서 개발자로
달마루
전체 방문자
오늘
어제
  • 분류 전체보기 (334)
    • 기획 이야기 (3)
    • 개발자로 전향한 이유 (1)
    • Github Address (1)
    • 개발자, 그 여정 (11)
      • 기초특강 (4)
      • 국비학원 선정 (4)
      • BitCamp_수업내용 (1)
      • 학원 프로젝트 후기 (1)
      • 정보처리기사 (1)
      • 개발 이야기 (0)
    • 개념 창고 (126)
      • JAVA (50)
      • CS (1)
      • Database (27)
      • NetWork (2)
      • 자료 구조 (2)
      • React (8)
      • Spring (3)
      • JPA (1)
      • HTML & CSS (18)
      • JS (3)
    • algorithm (186)
      • 백준 (161)
      • 프로그래머스 (23)
    • 사는 이야기 (0)

블로그 메뉴

  • Github
  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 문제풀이
  • Scanner
  • 백준
  • 백준알고리즘
  • SQL
  • 백준문제풀이
  • HTML
  • 자바
  • programmers
  • sql 문제풀이
  • 혼자공부하는SQL
  • Bronze IV
  • Bronze III
  • BRONZE
  • java algorithm
  • Algorithm
  • java
  • 알고리즘
  • BOJ
  • Bronze V
  • BOJ algorithm
  • select
  • react
  • 알고리즘풀이
  • math
  • 혼공MySQL
  • 혼공SQL
  • 프로그래머스
  • MySQL
  • SQL고득점Kit

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
달마루

기획자에서 개발자로

CI(Continuous Integration)와 CD(Continuous Deployment / Continuous Delivery)
개념 창고

CI(Continuous Integration)와 CD(Continuous Deployment / Continuous Delivery)

2024. 2. 6. 01:05

CI/CD 는
지속적 통합(Continuous Integration)과
지속적 배포(Continuous Deployment),
지속적 제공 (Continuous Delivery)의 약어입니다.

각 개념에 대한 자세한 사항은 아래 정리합니다.

지속적 통합 (Continuous Integration - CI) :
개념: 코드 변경 사항을 지속적으로 통합하여 품질을 유지하고 향상시키는 프로세스.
동작 방식: 개발자들이 코드를 개발하는 동안, 변경된 코드가 공유 리포지토리에 통합되고, 자동으로 빌드 및 테스트가 실행됨.
목적: 개발자들이 자주 코드를 통합하여 충돌을 최소화하고 품질을 지속적으로 검증함으로써 빠르게 소프트웨어를 개발하고 배포하는 것.

지속적 제공 (Continuous Delivery - CD):
개념: 지속적 제공은 지속적 통합의 확장으로, 자동으로 빌드 및 테스트를 통해 배포 가능한 소프트웨어를 생성하되, 프로덕션 환경으로의 배포는 자동화되지 않음.
동작 방식:코드 변경이 발생하면 자동으로 빌드 및 테스트를 실행하여 배포 가능한 소프트웨어를 생성하나, 프로덕션 배포는 수동으로 진행.
목적: 안정적이고 신뢰성 있는 소프트웨어를 지속적으로 생성하면서도 배포 과정의 투명성과 효율성을 높여, 언제든지 배포할 수 있는 소프트웨어를 개발자들이 관리할 수 있도록 합니다. 이는 비즈니스 요구에 따라 적절한 시점에 배포를 수행할 수 있도록 함.

지속적 배포 (Continuous Deployment - CD):
개념: 코드 변경이 자동으로 프로덕션 환경으로 배포되는 프로세스.
동작 방식: CI에서 통합된 코드가 자동으로 배포 파이프라인을 통과하여 프로덕션 환경에 자동으로 배포됨.
목적: 프로덕션 배포의 자동화를 통해 소프트웨어를 신속하게, 안정적으로, 반복적으로 배포함.
CI/CD는 다양한 도구와 자동화 기술을 활용하여 이러한 개념을 실현합니다. 이를 통해 개발자들은 빠르게 변경 사항을 통합하고 배포할 수 있으며, 소프트웨어의 품질을 지속적으로 모니터링하고 향상시킬 수 있음.

최종 정리 :
CI/CD는 빌드, 테스트, 배포 등을 자동화하여 품질을 향상시키고 빠르게 소프트웨어를 개발하고 배포하는 데 중점을 둔다.
CI는 통합만을, CD는 그 중에서도 배포 단계의 자동화 여부에 따라 두 가지로 나눠진다.

저작자표시 비영리 변경금지

'개념 창고' 카테고리의 다른 글

SDK와 JDK의 차이점  (0) 2024.04.19
CI/CD 도구  (0) 2024.02.06
Nods.js란?  (0) 2024.02.05
MSB(Most Significant Bit) & LSB(Least Significant Bit)  (0) 2024.01.31
Signed & Unsigned 정의 및 차이  (0) 2024.01.31
    '개념 창고' 카테고리의 다른 글
    • SDK와 JDK의 차이점
    • CI/CD 도구
    • Nods.js란?
    • MSB(Most Significant Bit) & LSB(Least Significant Bit)
    달마루
    달마루
    항상 어제보다 좋은 코드를 지향합니다. https://github.com/LimDongHyun99

    티스토리툴바