CI/CD란
코드 변경 사항을 자동으로 빌드, 테스트, 배포하여 소프트웨어 전달 속도와 품질을 높이는 자동화 방식이다 CI가 코드 품질을 보장하는 단계라면 이제 남은건 이 코드를 실제 서버에 올리는 일이다
리포지토리란
코드 변경 사항을 저장,관리하는 중앙 집중식 디지털 저장소이다
배포 전략
- 인플레이스 배포(In-place Deployment)
- 인플레이스 배포는 사용중인 환경에 새로운 변경사항이 포함된 어플리케이션만 반영하는 방법
- 블루/그린 배포 (Blue/Green Deployment)
- 새로운 변경사항이 포함된 어플리케이션을 위한 새로운 환경을 구축하고 교체하는 방법
- 카나리 배포 (Canary Deployment)
- 가동 중인 서버들의 일부에만 새로운 앱을 배포하여, 일부 트래픽을 새 버전의 환경으로 분산하는 방법
CI란
- 작업 방식:개발자의 코드 조각을 공유 리포지토리에 자주 커밋한다
- 동작 방식:자동으로 빌드를 실행하고 테스트를 진행하여 코드 변경 사항이 전체 시스템과 잘 맞는지 확인 한다
- 목적:버그를 조기에 발견하여 코드 품질을 유지한다
- CI 요약: 빌드/테스트 자동화 과정
커밋이란
- CodeCommit 코드의 변경 사항을 영구적으로 저장하고 기록하는거다
CD란
- 작업 방식:CI 과정을 통과한 코드를 자동으로 운영 서버에 배포하는 과정이다
- 동작 방식:빌드와 테스트가 완료된 결과물을 자동으로 대상 환경에 배포하고, 배포 검증 후 문제가 발생하면 롤백한다.