CI/CD

전은평·2023년 5월 7일
0

CI/CD란?

Continuous Integrationcontinuous deployment의 약자로, 직역하면 지속적인 통합 + 지속적인 배포를 뜻한다.

아마 대략적으로 무엇을 의미하는지 짐작할 수 있었겠지만, 쉽게 설명하자면 개발 단계부터 배포까지 자동화 하는 것을 의미한다.

배포를 배운 적이 있었는데, 그 당시 쿠버네티스를 이용해서 배포를 했다. 이때 수정사항이 생길 때마다 git에 push하고, docker도 따로 build하고 구글 클라우드로 push도 한 뒤에, 구글 클라우드 shell을 통해 kubernetes 해당 클러스터에 접속해 이미지 업데이트 명령어를 작성해야만 했다. 설명만 했는데도 아마 과정이 복잡하고 귀찮게 느껴질 수 있을 것이다. 하지만 CI/CD 배포 자동화를 설정해두면, git에 push하기만 해도, 위의 과정이 자동으로 이루어져 훨씬 간단하게 처리할 수 있다.

그럼 어떻게 하면 되는걸까?

예전에 이미지 업로드를 공부할 때, 이미지를 업로드하면 자동으로 이미지를 크기별로 저장하는 기능을 만들어 본 적이 있다. 해당 글은 블로그로 안올려서 참고를 도와줄 순 없을 것 같다.. 다음에 올리면.. 참고로 넣어두겠다 그때 구글 클라우드의 트리거를 이용해서, 이미지가 업로드 될 때! 해당 기능을 수행하도록 코드를 짰었다.

이와 마찬가지로 CI/CD도 git에 push가 될 때를 기준으로 어떤 기능을 실행할 것인지 코드를 작성해 설정해두면 된다!

우리가 처리해줘야하는 과정을 위에서 언급했지만, 다시 정리하면 아래의 순서와 같다

  1. docker 이미지 build
  2. docker 이미지 push
  3. 해당 이미지로 업데이트
profile
`아는 만큼 보인다` 라는 명언을 좋아합니다. 많이 배워서 많은 걸 볼 수 있는 개발자가 되고 싶습니다.

0개의 댓글