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
| 観点 | ECR | Docker Hub |
|---|---|---|
| 認証 | IAM | Docker 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
動作の流れ
aws ecr create-repositoryでリポジトリ作成aws ecr get-login-passwordで認証トークン取得docker loginで ECR にログインdocker tag+docker pushでイメージをアップロード- ECS / EKS / Lambda がイメージ URL を参照して pull
- ライフサイクルポリシーが古いイメージを自動削除
脆弱性スキャン
- 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 | 中 | コンテナアーキテクチャでの位置づけ |
| DVA | 高 | ECR への push、Lambda コンテナ、CI/CD 連携 |
| SOA | 中 | ライフサイクルポリシー運用、コスト管理 |