Amazon ECR とは?フルマネージド コンテナイメージレジストリ

ECR は AWS マネージドのコンテナイメージレジストリ。Docker Hub の AWS 版と考えればよく、IAM 認証・暗号化・脆弱性スキャン・レプリケーションを統合提供する。ECS / EKS / Lambda(コンテナイメージ)と密結合し、AWS 内のコンテナワー...

AWS が提供するフルマネージド Docker / OCI コンテナイメージのレジストリ。


1. 概要(端的に)

ECR は AWS マネージドのコンテナイメージレジストリ。Docker Hub の AWS 版と考えればよく、IAM 認証・暗号化・脆弱性スキャン・レプリケーションを統合提供する。ECS / EKS / Lambda(コンテナイメージ)と密結合し、AWS 内のコンテナワークフローの中核。


2. 何ができるか

  • Docker / OCI イメージの保管:プッシュ・プル・タグ管理
  • プライベート / パブリック レジストリ:両対応(Public Gallery)
  • IAM ベースの認証認可:細かなアクセス制御
  • 脆弱性スキャン:Inspector ベースで CVE を自動検出
  • イメージ署名:コード署名による真正性担保
  • クロスリージョン / クロスアカウントレプリケーション
  • ライフサイクルポリシー:古いイメージを自動削除(コスト最適化)
  • 暗号化:保存時に KMS で自動暗号化

3. 特徴

観点特徴
マネージド完全マネージド(運用負荷ほぼゼロ)
セキュリティIAM・KMS・Inspector で多層防御
可用性リージョン内で複数 AZ にレプリカ
対応形式Docker / OCI
公開Private(IAM 認証)/ Public(誰でも pull 可)
料金ストレージ GB 単価 + データ転送
無料枠プライベート 500 MB/月、パブリック 50 GB/月

vs Docker Hub

観点ECRDocker Hub
認証IAMDocker ID
AWS サービス連携緊密別途認証必要
速度(AWS 内 pull)高速(同一リージョン)リージョン外
プライベート制限なし(料金次第)無料枠制限あり

4. 仕組み

ECR は 「リポジトリ」単位 でイメージを管理する。

構成要素

  • レジストリ:AWS アカウント単位のコンテナレジストリ
  • リポジトリ:イメージの集合(例:my-app
  • イメージタグ:バージョン識別子(latest, v1.0.0, sha256:...
  • ライフサイクルポリシー:古い・未使用イメージの自動削除ルール
  • レプリケーション設定:他リージョン・他アカウントへの自動コピー
  • イメージスキャン:Inspector による脆弱性スキャン

URL 形式

{account-id}.dkr.ecr.{region}.amazonaws.com/{repo-name}:{tag}
例: 123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/my-app:v1.0.0

動作の流れ

  1. aws ecr create-repository でリポジトリ作成
  2. aws ecr get-login-password で認証トークン取得
  3. docker login で ECR にログイン
  4. docker tag + docker push でイメージをアップロード
  5. ECS / EKS / Lambda がイメージ URL を参照して pull
  6. ライフサイクルポリシーが古いイメージを自動削除

脆弱性スキャン

  • Basic Scan:プッシュ時 1 回スキャン(無料)
  • Enhanced Scan:Inspector 連携、継続スキャン(有料)

5. ユースケース

ユースケース 1:ECS / EKS の標準レジストリ

AWS 内で完結するコンテナワークフローの中心。

ユースケース 2:Lambda コンテナイメージの保管先

Lambda は ECR にあるコンテナイメージのみサポート。

ユースケース 3:CI/CD パイプライン

CodeBuild → ECR push → CodeDeploy で ECS にデプロイ。

ユースケース 4:マルチリージョンデプロイ

レプリケーション設定で東京 → 大阪 → シドニーへ自動コピー。

ユースケース 5:オープンソース公開

ECR Public Gallery で自社の OSS Docker イメージを公開。


6. 関連用語

  • ECS — ECR からイメージを pull
  • EKS — ECR からイメージを pull
  • Fargate — ECR からイメージを pull
  • Lambda — コンテナイメージは ECR から
  • IAM — ECR アクセス制御
  • KMS — ECR イメージの暗号化
  • Inspector — 脆弱性スキャンエンジン
  • CodeBuild — ECR への push を CI で

7. 関連サイト

AWS 公式

参考


🎓 試験での出題傾向

試験重要度主な出題パターン
CLFコンテナレジストリの存在
SAAコンテナアーキテクチャでの位置づけ
DVAECR への push、Lambda コンテナ、CI/CD 連携
SOAライフサイクルポリシー運用、コスト管理