
들어가며
Docker를 이용해 애플리케이션을 컨테이너로 실행하려면 먼저 Docker 이미지가 필요합니다. 개발 환경에서는 로컬 PC에서 이미지를 생성하여 사용할 수 있지만, 실제 운영 환경에서는 여러 서버나 컨테이너 서비스가 동일한 이미지를 사용할 수 있도록 이미지를 중앙에서 관리해야 합니다.
이때 Docker Hub와 같은 공개 레지스트리를 사용할 수도 있지만, 기업에서는 보안과 권한 관리, AWS 서비스와의 연동을 위해 Amazon ECR(Elastic Container Registry) 를 많이 사용합니다.
Amazon ECR은 AWS에서 제공하는 완전관리형 컨테이너 이미지 저장소로, Docker 이미지를 안전하게 저장하고 ECS, EKS, AWS Batch 등 다양한 컨테이너 서비스에서 쉽게 사용할 수 있습니다.
이번 글에서는 Amazon ECR의 개념부터 Docker 이미지 저장 과정, IAM 권한 관리, 이미지 버전 관리까지 살펴보겠습니다.
1. Amazon ECR이란?

Amazon ECR(Elastic Container Registry)은 Docker 및 OCI(Open Container Initiative) 컨테이너 이미지를 저장하고 관리하는 AWS의 완전관리형 컨테이너 레지스트리 서비스입니다.
개발자는 로컬에서 Docker 이미지를 생성한 뒤 Amazon ECR Repository에 업로드(Push)할 수 있으며, ECS, EKS, AWS Batch 등의 서비스는 필요한 이미지를 ECR에서 다운로드(Pull)하여 컨테이너를 실행합니다.
또한 ECR은 AWS IAM과 연동되어 사용자와 서비스별 접근 권한을 세밀하게 제어할 수 있으며, 이미지 취약점 검사와 버전 관리 기능도 함께 제공합니다.
2. 왜 Amazon ECR을 사용할까?
Docker 이미지는 어디엔가 저장되어 있어야 여러 서버에서 동일한 이미지를 사용할 수 있습니다.
예를 들어 Docker Hub를 사용할 수도 있지만,
- 기업 내부 이미지 관리
- 접근 권한 제어
- AWS 서비스와의 연동
- 보안 강화
등을 고려하면 Amazon ECR이 더욱 적합합니다. 특히 ECS, EKS, AWS Batch에서는 ECR과 자연스럽게 연동되어 별도의 이미지 저장소를 구축하지 않아도 됩니다.
3. Amazon ECR 동작 과정

4. Private Repository와 Public Repository

4-1) Private Repository
기업 내부에서 사용하는 이미지 저장소입니다. IAM을 이용하여 접근 권한을 제어할 수 있으며, 대부분의 운영 환경에서 사용됩니다.
4-2) Public Repository
공개 Docker 이미지를 배포할 수 있는 저장소입니다. 누구나 이미지를 다운로드할 수 있으며, 오픈소스 프로젝트에서 많이 활용됩니다.
5. IAM 권한 관리

Amazon ECR은 AWS IAM과 연동됩니다. ECS가 이미지를 가져오려면
- ECR Repository 접근 권한
- 이미지 다운로드(Pull) 권한
이 필요합니다. 따라서 ECS Task나 EC2 Instance에는 적절한 IAM Role이 부여되어 있어야 합니다.
6. 이미지 관리 기능
Amazon ECR은 이미지를 효율적으로 관리하기 위한 다양한 기능을 제공합니다.
6-1) Image Tag

이미지 버전을 구분하기 위한 기능입니다.
6-2) Image Scanning

업로드된 Docker 이미지의 알려진 보안 취약점을 검사하는 기능입니다. 이를 통해 운영 환경에 배포하기 전에 보안 위험을 미리 확인할 수 있습니다.
6-3) Lifecycle Policy
오래된 이미지를 자동으로 삭제하는 기능입니다. 예를 들어 최근 10개의 이미지만 유지하고 나머지는 자동 삭제하도록 설정하여 저장 공간을 효율적으로 관리할 수 있습니다.
7. Docker Hub와 Amazon ECR 비교
| 항목 | Docker Hub | Amazon ECR |
| 제공 업체 | Docker | AWS |
| AWS 연동 | 제한적 | 매우 쉬움 |
| IAM 권한 | 지원 안 함 | 지원 |
| 취약점 검사 | 일부 지원 | 지원 |
| Lifecycle 관리 | 제한적 | 지원 |
| 운영 환경 | 일반적 | AWS 환경에 최적화 |
8. 마치며
이번 글에서는 Amazon ECR의 기본 개념과 주요 기능을 살펴보았습니다. 처음에는 단순히 Docker 이미지를 저장하는 공간이라고 생각했지만, 학습하면서 ECR은 이미지 저장뿐 아니라 IAM 기반의 접근 제어, 이미지 버전 관리, 취약점 검사, Lifecycle Policy를 통한 자동 정리 기능까지 제공하는 컨테이너 이미지 관리 서비스라는 점을 이해할 수 있었습니다.
또한 ECR은 ECS, EKS, AWS Batch와 자연스럽게 연동되어 동일한 이미지를 여러 컨테이너 환경에서 일관성 있게 사용할 수 있다는 점도 알게 되었습니다.
이를 통해 컨테이너 기반 애플리케이션에서는 이미지를 실행하는 서비스(ECS, EKS, Batch) 와 이미지를 저장하는 서비스(ECR) 가 서로 역할을 분담하며 함께 동작한다는 구조를 이해할 수 있었습니다.
'Data Engineering > AWS' 카테고리의 다른 글
| AWS Glue ETL | DynamicFrame과 주요 Transformation 이해하기 (0) | 2026.07.15 |
|---|---|
| Amazon EKS란 (0) | 2026.07.09 |
| Amazon ECS란 (0) | 2026.07.09 |
| AWS Batch란 (0) | 2026.07.08 |
| AWS SAM(Serverless Application Model)란 (0) | 2026.07.08 |