[AWS] Amazon Elastic Container Registry 알아보기

요즘 IT 업계에서는 테스트 환경, 개발 환경, 서비스 환경 등을 도커 컨테이너를 통해 많이 구현하고 사용하고 있습니다.
이런 도커 컨테이너의 이미지를 관리하기 위해서는 컨테이너 레지스트리를 통해 업로드 및 다운로드하여 사용하고 있는데요. 그 중 가장 많이 사용하고 대표적인 Docker Hub가 있지만 오늘은 Amazon에서 제공하는 Elastic Container Registry(ECR) 서비스에 대해 알아보고자 합니다.

 

 


개요

Amazon Elastic Container Registry (ECR)은 AWS에서 제공하는 관리형 도커 컨테이너 이미지 저장소입니다.


사용자(개발자)들은 ECR을 사용하여 컨테이너 이미지를 안전하게 저장하고 관리할 수 있는데요. ECR은 AWS에서 제공하는 EC2 인스턴스, ECS 클러스터, EKS 클러스터, AWS Fargate 등과 함께 사용할 수 있으며, 이를 통해 개발자들은 ECR에 저장된 컨테이너 이미지를 손쉽게 배포하고 실행할 수 있습니다.

 

 


기능

 

작동 방식

Amazon Elastic Container Registry (ECR)는 사용자가 도커 컨테이너 이미지를 안정적으로 관리하고 배포할 수 있도록 지원하고 있으며, AWS에서 제공하는 다양한 환경 및 On premises 에서 사용할 수 있습니다.

 

상세 기능

Amazon Elastic Container Registry (ECR)의 상세 기능을 정리해봤습니다.

 

  • 컨테이너 이미지 저장 및 관리
    • ECR은 도커 컨테이너 이미지를 중앙 집중화된 저장소에 안전하게 저장하고 관리합니다.
    • 이미지를 ECR에 업로드하여 버전 관리, 보안 및 접근 제어를 적용할 수 있습니다.
  • 보안 및 액세스 제어
    • ECR은 AWS Identity and Access Management (IAM)을 사용하여 액세스 제어를 구현합니다.
    • 사용자는 이미지에 대한 액세스 권한을 정교하게 구성하여 필요한 보안 수준을 유지할 수 있습니다.
  • 통합 및 배포
    • ECR은 다른 AWS에서 제공하는 다양한 서비스 및 환경과 통합되서 사용할 수 있습니다.
    • 예를 들어, EC2 인스턴스, ECS 클러스터, EKS 클러스터, AWS Fargate 등과 함께 사용하여 컨테이너 이미지를 배포하고 실행할 수 있습니다.
  • 이미지 레지스트리 및 태그 관리
    • ECR은 이미지 레지스트리를 제공하여 개발자가 이미지를 조직적으로 구성할 수 있도록 합니다.
    • 또한, 이미지에 태그를 할당하여 버전 관리를 용이하게 할 수 있습니다. 태그를 사용하여 특정 버전의 이미지를 식별하고 추적할 수 있습니다.
  • 이미지 스캔 및 취약점 관리
    • ECR은 컨테이너 이미지를 스캔하고 보안 취약점을 검출할 수 있습니다.
    • 이를 통해 개발자는 이미지의 보안 수준을 유지하고 취약점을 해결할 수 있습니다.
  • 확장성 및 신뢰성
    • ECR은 AWS의 글로벌 인프라스트럭처를 기반으로 하며, 안정적이고 확장 가능한 서비스입니다.
    • 개발자는 필요에 따라 컨테이너 이미지의 저장 용량을 증가시킬 수 있으며, 고가용성과 신뢰성을 보장합니다.

 

 

저는 여러 기능 중 이미지 스캔 및 취약점 관리 기능이 가장 좋다고 생각했는데요.
Private Docker Container Registry를 구축하거나 Docker Hub을 사용한다면 보안 취약점 부분은 쉽게 놓치고 갈 수 있기 때문에 꼭 필요한 기능이라고 생각됩니다.

 

 


요금

Amazon Elastic Container Registry (ECR)의 요금 정보를 정리해봤습니다.

 

 

기본적으로 요금은 데이터 저장 용량과 데이터 전송 용량에 따라 계산되는데요.
데이터 저장 용량은 월 기준 10GB 당 1 USD로 모든 리전에서 동일한 것으로 확인됩니다.

 

 

데이터 전송 용량은 도커 컨테이너 이미지를 업로드하는 경우에는 무료이며, 인터넷 환경이나 다른 리전에서 도커 컨테이너 이미지를 다운로드하는 경우에는 사용량에 따라 요금이 측정됩니다. 같은 리전은 무료이며 리전에 따라 요금은 조금 다른 것으로 확인되며 아래 사진을 통해 추가적인 정보를 확인해보시면 좋을 것 같습니다.

 

 


활용

Amazon Elastic Container Registry (ECR)를 활용하는 방법입니다.


우선 위에서 설명해드린 내용으로 단순하게 도커 컨테이너 이미지를 저장하여 관리할 뿐만 아니라 버전관리, 액세스 제어, 이미지 스캔 및 보안 취약점 점검, 확장 등 다양한 기능을 활용해보실 수 있습니다.

 

실제 도커 컨테이너 이미지를 관리해야 되는 상황이라면 어떤 컨테이너 레지스트리 서비스를 사용할지 고민이 되실 겁니다. 제 개인적인 의견으로는 AWS Cloud 환경에서 서비스를 배포하거나 개발 환경이 있다면 Amazon ECR을 활용하면 좋을 것 같고, 그렇지 않다면 그 외의 Container Registry 서비스를 찾아보시고 비교해보신 다음 사용하시는 것도 좋을 것 같습니다.

 


그 외의 Container Registry 서비스

Amazon Elastic Container Registry (ECR) 외의 다른 Container Registry 서비스를 단간히 알아보겠습니다.

 

 

가장 널리 알려진 오픈 소스 컨테이너 레지스트트리인 Docker Hub부터,
Google에서 제공하는 Google Container Registry,
Azure에서 제공하는 Azure Container Registry,
네이버에서 제공하는 Naver Cloud Container Registry 등이 있습니다.

 

각각의 Container Registry 서비스마다 기능, 특징, 요금이 다르므로
사용하고자하는 환경에 맞는 Container Registry를 선택 후 사용하시기 바랍니다.

 

 

 

지금까지 Amazon의 Elastic Container Registry를 알아보는 시간이었습니다....! 끝...!

 

 

 

[Reference]

 

 

'AWS' 카테고리의 다른 글

[AWS] AWS Direct Connect 알아보기  (0) 2023.07.12
[AWS] Amazon SNS 알아보기  (0) 2023.07.11
[AWS] Insufficient capacity error 에러  (0) 2023.05.23
[AWS] Service Quota 알아보기  (0) 2023.05.22
[AWS] AWS Summit Seoul 2023 2일차  (0) 2023.05.04

+ Recent posts