프로그래밍

Docker로 CI/CD를 구축하는 방식

개발자 YD 2025. 4. 18. 16:57

Docker로 이미지를 사용해 CI(Continuous Integration) CD(Continuous Delivery)를 구축 할 때 사용하는 방법은 크게 두가지로 구분 할 수 있다.

 

1. 이미지 기반 배포 (Image-based Deployment)

이미지 기반 배포 방법은 도커 이미지를 사용할 때 가장 일반적이고 많이 사용하는 방법이다. Docker 이미지를 빌드 후 레지스트리에 등록하고, 등록 된 이미지를 배포 서버에서 끌어와 사용하는 방식이다.

이미지 기반 배포 (Image-based Deployment)

이 방식의 장점은 등록된 이미지를 기반으로 일관되게 사용 할 수 있다는 점이다. 더불어 AWS와 같은 클라우드 서비스에서 관리하는 서비스는 수직 및 수평 확장, 축소에 매우 유리하다. 단점은 일반적인 배포 방식보다 번거롭게 느껴질 수 있는 과정들이 있다는 부분이 있다. 하지만 CI/CD를 구축하는 과정에서 일시적으로 단계가 추가되는 것일 뿐 개발, 테스트, 운영 환경에 각각 배포까지 해야하는 상황이라면 이건 전혀 단점이 될 수 없다.

 

* 수직 수평, 추소 (서버 성능 확장 축소 - Scale Up, Scale Down), 수평 확장, 축소 (서버 개수 확장, 축소 - Scale Out, Scale In)

2. 원격 실행 배포 (Remote Execution / SSH-based Deployment) with 이미지

이미지로 원격 실행 배포하는 방법은 많이 사용하는 방법은 아니지만 상황에 따라 유연하게 이미지를 배포하는 방법이다. 보통 이미지 등록하고 가져와서 사용하는게 불필요하고 느껴지거나 소규모 프로젝트에서 CI/CD를 간소화해서 하기위해 사용한다.

원격 실행 배포 (Remote Execution / SSH-based Deployment)

이 방법의 장점은 기존에 사용하던 정통적인 CI/CD 프로세스에 도커가 가진 이미지의 장점을 가져와 접목시켰다는 점이다. 그래서 도커 도입이 어렵다고 느껴질 때 도커를 간단하게 경험하기에 괜찮은 방법이다. 물론 어중간한 느낌이 나기도하지만 도커 이미지 기반으로 하기 때문에 나중에라도 쉽게 이미지 기반 배포 방식으로 변경도 용이하다.

반응형