Day 85 · 1/5
🌳 고급 deployment

컨테이너 레지스트리가 뭔가요?

쉽게 이해하기

앱 스토어에서 앱을 다운받듯이, 컨테이너 레지스트리는 도커 이미지를 올리고 받을 수 있는 '이미지 저장소'예요. GitHub이 코드를 저장한다면, 레지스트리는 완성된 앱 이미지를 저장하죠.

핵심 정리

도커 이미지를 저장하고 공유하는 저장소예요.

자세히 알아보기

컨테이너 레지스트리는 도커 이미지를 중앙에서 관리하는 저장소예요. 개발자가 만든 도커 이미지를 업로드하면, 다른 서버나 팀원들이 그 이미지를 다운받아서 바로 실행할 수 있어요. 가장 유명한 레지스트리는 Docker Hub예요. 공개 이미지는 무료로 쓸 수 있고, nginx나 postgres 같은 유명한 이미지들이 여기에 올라와 있죠. 회사에서는 보안을 위해 AWS ECR, Google Container Registry, Harbor 같은 프라이빗 레지스트리를 많이 써요. 실무에서는 CI/CD 파이프라인에서 빌드한 이미지를 레지스트리에 푸시하고, 배포 서버에서는 그 이미지를 풀(pull)해서 실행해요. 이미지마다 태그(버전)를 붙여서 관리하기 때문에, 문제가 생기면 이전 버전으로 쉽게 롤백할 수 있어요. 레지스트리는 이미지 스캔 기능도 제공해서, 보안 취약점이 있는 이미지를 배포 전에 미리 감지할 수 있어요. 또 접근 권한을 설정해서 특정 팀만 특정 이미지를 사용하도록 제한할 수도 있죠.