범위 : CI/CD 도입하기

 

CI(Continuous Integration)

- 지속적 통합 = 빌드와 테스트를 자동화하는 과정

- 변경 사항을 자동으로 테스트해 앱에 문제가 없다는 것을 보장한다.

- 코드를 정기적으로 빌드하고 테스트 해서 여러 명이 동시에 작업을 하는 경우도 충돌을 방지하고 모니터링 할 수 있다.

- 코드 변경 사항이 코드 저장소에 업로드되면 CI를 시작하고, CI 도중 문제가 생기면 실패한다. -> 코드의 오류를 쉽게 파악 가능

 

CD(Continuous Delivery or Continuous Deployment)

- CI 작업을 끝낸 다음 실행하는 작업

- 지속적 제공, 지속적 배포라는 의미를 가진다.

- 배포 준비가 된 코드를 자동으로 서버에 배포하는 작업을 자동화 한 것.

- 빌드와 테스트를 성공적으로 진행했을 때 깃허브와 같은 코드 저장소에 자동으로 업로드 한다. -> 최소한의 노력으로 코드 배포를 쉽게 하는 것이 목표

- 성공적으로 병합한 코드 내역을 AWS와 같은 배포 환경으로 보냄. 실무에서는 릴리스라고 한다. 

- 개발자가 애플리케이션에 변경 사항을 커밋한 후 몇 분 이내에 애플리케이션이 자동으로 배포되어 적용된다. 

 

깃과 깃허브

- 깃: 코드를 저장하고 관리할 수 있는 시스템. 여러 명이 동시에 작업할 수 있다. -> 병렬 개발이 가능함

- 깃허브: 깃과 연동해 작업한 코드를 저장할 수 있는 서비스 

  ( 깃허브 외에 깃과 연동된 오픈소스 저장소는 깃랩, 비트버킷, 타라볼트 등이 있다.)

 

 

 

 

오마이갓.! 

스터디를 완주했다!!!

 

새해 복 많이 받으세요 ~~~~~!~!~!~!!