![[Web] CI/CD란?](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKciNm%2FbtsGifaW4BD%2FMqeEbQG9sPdHxBX8Ndu3Kk%2Fimg.png)
배경
흔히 기본 개발을 하다가 "나는 개발자에 맞는 상인가"라는 테스트를 해보았을때, 거기에 있는 질문중에서 하나가 '나는 CI/CD를 구현해본적이 있다'라는 질문이 있었고, 그 뜻이 무엇인지를 몰라 이렇게 검색을 하다가 블로그까지 작성하게 되었습니다.
CI란? (Continuous Integration)
빌드/테스트화 과정
만약 어떤 프로젝트를 진행중일때 CI를 성공적으로 구현할 경우, 어플리케이션에 대한 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트되어 공유 리포지토리에 통합되므로 여러 명의 개발자가 동시에 애플리케이션 개발과 관련된 코드 작업을 할 경우 서로 충돌할 수 있는 문제를 해결할 수 있습니다.
커밋할때마다 자동테스트를 하여 에러가 안나도록 보장하죠.
CD란? (Continuous Deployment)
자동 배포화 과정
예를 들어 코드 변경이 파이프라인의 이전 단계를 모두 성공적으로 통과하면 수동 개입 없이 해당 변경 사항이 프로덕션에 자동으로 배포됩니다. 지속적 배포를 채택하면 품질 저하 없이 최대한 빨리 사용자에게 새로운 기능을 제공할 수 있습니다.
입증된 지속적 통합 및 지속적인 전달 단계를 기반으로 합니다. 간단한 코드 변경이 정기적으로 마스터에 커밋되고, 자동화된 빌드 및 테스트 프로세스를 거치며 다양한 사전 프로덕션 환경으로 승격되며, 문제가 발견되지 않으면 최종적으로 배포됩니다. 강력하고 신뢰할 수 있는 자동화 배포 파이프라인을 구축하면 하루에도 여러 번 이루어지는 릴리즈가 특별하지 않은 작업이 됩니다.
CI/CD 장점
- 변경 사항을 자주 푸시하고자 하는 개발자와 안정적인 애플리케이션을 원하는 운영 담당자 사이의 마찰을 해결한다.
- 코드 변경을 사용자에게 푸시하기 전에 검증하기 위해 개발 팀은 지속적인 테스트를 실행해야 한다.
마무리
나중에 더 자세하게 알아보는 시간을 가지도록 하겠습니다.
이상한 부분이나 잘못된 부분이 있다면 댓글을 달아주시면 바로바로 반영하도록 하겠습니다.
📝참고
https://www.redhat.com/ko/topics/devops/what-is-ci-cd
CI/CD(CI CD, 지속적 통합/지속적 배포): 개념, 툴, 구축, 차이
CI/CD는 애플리케이션의 통합 및 테스트 단계부터 제공 및 배포까지 애플리케이션 라이프사이클 전체에서 지속적인 자동화와 지속적인 모니터링을 제공하는 것을 뜻합니다.
www.redhat.com
https://scoring.tistory.com/entry/%EA%B0%9C%EB%B0%9C%EC%A7%80%EC%8B%9DCS-CI-CD-%EB%9E%80
[개발지식/CS] CI / CD 란?
CI / CD 란? CI(Continuous Integration) CI는 개발자를 위한 자동화 프로세스인 지속적인 통합(Continuous Integration)을 의미한다. CI를 성공적으로 구현하는 경우, 애플리케이션에 대한 새로운 코드 변경 사항
scoring.tistory.com
'CS > Web' 카테고리의 다른 글
[Web] 로컬스토리지 ,세션스토리지는 무엇일까? (0) | 2024.04.01 |
---|---|
[Web] JWT와 OAuth는 무엇이며, 차이점은? (0) | 2024.03.14 |
[Web] 'https://www.google .com/' 을 검색하면 어떤 일이 발생할까 (0) | 2024.03.13 |
[Web] HTTP 요청 메서드 (0) | 2024.02.04 |
[Web] IP의 기본 개념 (2) | 2024.02.04 |
IT에 관한 모든 것을 공부하고, 설명합니다. Study and explain everything about IT.
포스팅이 좋았다면 "구독👍🏻" 해주세요!