Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개발새발

CI / CD 본문

CS

CI / CD

개발하는후추 2022. 10. 25. 18:59
CI/CD는 애플리케이션 개발 단계를 자동화하여 애플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법

애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르러 애플리케이션 라이프 사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공합니다. 

CI (Continuous Integration)

- 지속적 통합

- 빌드/테스트 자동화 과정

- 개발자를 위한 자동화 프로세스

- 여러 명이 하나의 코드에 대해서 수정을 진행해도 지속적으로 통합하면서 관리할 수 있음

- 개발자가 빌드와 테스트를 직접 하지 않고도 수정한 코드를 브랜치에 병합하기만 하면 자동으로 빌드와 테스트를 검증할 수 있음

- 커밋할 때마다 빌드와 일련의 자동 테스트가 이루어져 동작을 확인하고 변경으로 인해 문제가 생기는 부분이 없도록 보장

- 그 자체로 유익하지만 CI/CD 파이프라인을 구현하기 위한 첫 단계이다

CD(Continuous Deployment)

- 지속적 통합을 거친 코드에 대해서 신뢰할 수 있고 바로 배포

- 지속적 배포로 소프트웨어가 항상 신뢰 가능한 수준에서 배포될수 있도록 하자는 개녕에서 지속적 제공(Continuous Delivery)로 사용되기도 한다

- 지속적 제공은 CI를 통해 새로운 소스코드의 빌드와 테스트 병합까지 성공적으로 진행되었다면, 빌드와 테스트를 거쳐 github과 같은 저장소에 업로드 하는것을 의미

- 코드변경이 파이프라인의 이전 단계를 모두 성공적으로 통과하면 수동 개입 없이 해당 변경 사항이 프러덕션에 자동으로 배도

- 품질 저하 없이 최대한 빨리 사용자에게 새로운 기능을 제공할 수 있다 

CI/CD 종류

- Jenkins

- CircleCI

- TravisCI

- Github Action

 

참고

: https://www.redhat.com/ko/topics/devops/what-is-ci-cd

'CS' 카테고리의 다른 글

OAuth 와 JWT의 흐름  (0) 2022.10.27
WebClient  (0) 2022.10.05
동기 비동기  (0) 2022.09.11
네트워크  (0) 2022.08.03
컴퓨터와 프로그래밍의 이해 - 웹 어플리케이션과 웹 서버  (0) 2022.07.27
Comments