[AWS] ECR 이란? 🫢
Amazon Elastic Container Registry의 약자로, 안전하고 확장 가능한 신뢰성 있는 AWS 관리형 컨테이너이다.
AWS IAM 기반으로 특정 사용자만 이미지에 접근 가능하게 제어하는 프라이빗 레포지터리를 지원한다. 퍼블릭 레포지터리로 사용할 수 있다.
이 글에서 ECR이 무엇인지 가장 기본적인 내용만 간단히 정리해보려고 한다.
특징
1. OCI(Open Container Intiative) 표준 및 Docker Registry HTTP API V2 지원
- Docker CLI 명령을 통해 ECR을 사용할 수 있다.
2. 컨테이너 이미지 및 아티팩트를 Amazon S3에 저장한다.
- S3는 버킷에 저장된 객체를 복사본으로 자동으로 생성하고 저장하여 높은 생산석을 제공한다.
3. 접근 제어
- IAM을 사용하여 이미지에 접근 권한을 제어한다.
구성 요소
Registry
사용자는 Registry에 하나 이상의 레포지터리를 생성할 수 있다. 각 AWS계정은 하나 이상의 ECR 프라이빗 Registry를 제공한다.
Repository
Docker 이미지, Open Container Initiative(OCI) 이미지 및 OCI 호환 아티팩트 등을 저장할 수 있다.
Repository policy
Repository에 대한 접근 제어를 관리한다.
Image
Repository에 저장된 Docker 이미지. ECK, EKS 등에서 사용할 수 있다.
사용자 권한 토큰
클라이언트는 Amazon ECR Registry에 AWS 인증을 해야 Registry에서 이미지를 푸시하고 가져올 수 있습니다.
기능
- 생명주기 정책
- 레포지터리에 있는 이미지의 생명 주기를 관리합니다. 사용하지 않은 이미지는 정리하는 규칙을 정합니다.
- 이미지 스캔
- 컨테이너 이미지의 취약성을 식별하는데 도움이 된다. 각 레포지터리는 푸시시 스캔 하도록 구성되어 있습니다. 이렇게 하면 레포지터리로 푸시된 각각의 새 이미지가 스캔됩니다.
- 교차 리전 및 교차 계정 복제
- 이미지를 필요한 곳에 쉽게 배치할 수 있다.