翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
アップストリームレジストリと Amazon ECR プライベートレジストリの同期
プルスルーキャッシュルールを使用すると、アップストリームレジストリのコンテンツを Amazon ECR プライベートレジストリと同期できます。
Amazon ECR は現在、次のアップストリームレジストリのプルスルーキャッシュルールの作成をサポートしています。
-
Docker Hub、Microsoft Azure コンテナレジストリ、GitHub コンテナレジストリ、および GitLab コンテナレジストリ (認証が必要)
-
Amazon ECR パブリック、Kubernetes コンテナイメージレジストリ、Quay (認証は不要)
GitLab コンテナレジストリの場合、Amazon ECR は GitLab Software-as-a-Service サービスである GitLab.com でのみサポートされます。
認証が必要なアップストリームレジストリでは、認証情報を AWS Secrets Manager シークレットに保存する必要があります。Amazon ECR コンソールでは、認証された各アップストリームレジストリの Secrets Manager シークレットを簡単に作成できます。Secrets Manager コンソールを使用して Secrets Manager シークレットを作成する方法の詳細については、「アップストリームリポジトリの認証情報を AWS Secrets Manager シークレットに保存する」を参照してください。
アップストリームレジストリのプルスルーキャッシュルールを作成したら、Amazon ECR プライベートレジストリ URI を使用して、そのアップストリームレジストリからイメージをプルするだけです。次に Amazon ECR はリポジトリを作成し、そのイメージをプライベートレジストリにキャッシュします。特定のタグが付いている、キャッシュされたイメージの後続のプルリクエストでは、Amazon ECR はアップストリームレジストリをチェックして、その特定のタグを持つイメージの新しいバージョンがあるかどうかを確認し、プライベートレジストリ内のイメージの更新を少なくとも 24 時間に 1 回試みます。
リポジトリ作成テンプレート
Amazon ECR でリポジトリ作成テンプレートのサポートが追加されました。これにより、Amazon ECR がプルスルーキャッシュルールを使用してユーザーの代わりに作成する新しいリポジトリの初期設定を、指定できるようになります。各テンプレートには、新しいリポジトリを特定のテンプレートと一致させるために使用されるリポジトリ名前空間プレフィックスが含まれています。テンプレートでは、リソースベースのアクセスポリシー、タグのイミュータビリティ、暗号化、ライフサイクルポリシーなど、すべてのリポジトリ設定の設定を指定できます。リポジトリ作成テンプレートの設定はリポジトリの作成時にのみ適用され、既存のリポジトリや他の方法で作成されたリポジトリには影響しません。詳細については、「プルスルーキャッシュまたはレプリケーションアクション中に作成されたリポジトリを制御するテンプレート」を参照してください。
プルスルーキャッシュルールを使用するための考慮事項
Amazon ECR のプルスルーキャッシュルールを使用する際には、以下の点について考慮する必要があります。
-
次のリージョンでは、プルスルーキャッシュルールの作成はサポートされていません。
-
中国 (北京) (
cn-north-1
) -
中国 (寧夏) (
cn-northwest-1
) -
AWS GovCloud (米国東部) (
us-gov-east-1
) -
AWS GovCloud (米国西部) (
us-gov-west-1
)
-
-
AWS Lambda では、プルスルーキャッシュルールを使用した Amazon ECR からのコンテナイメージのプルはサポートされていません。
-
プルスルーキャッシュを使用してイメージをプルする場合、イメージを最初にプルするときに Amazon ECR FIPS サービスエンドポイントはサポートされません。ただし、Amazon ECR FIPS サービスエンドポイントは、その後のプルでも使用できます。
-
キャッシュされたイメージが Amazon ECR プライベートレジストリ URI を介してプルされると、イメージのプルが AWS IP アドレスによって開始されます。これにより、アップストリームレジストリが実行するプルレートクォータに対して、イメージのプルがカウントされないようになります。
-
キャッシュされたイメージが Amazon ECR プライベートレジストリ URI を介してプルされると、Amazon ECR はアップストリームリポジトリを少なくとも 24 時間に 1 回チェックして、キャッシュされたイメージが最新バージョンであるかどうかを確認します。アップストリームレジストリに新しいイメージがある場合、Amazon ECR はキャッシュされたイメージの更新を試みます。このタイマーは、キャッシュされたイメージの最後のプルに基づいています。
-
Amazon ECR が何らかの理由でアップストリームレジストリからイメージを更新できず、イメージがプルされた場合でも、最後にキャッシュされたイメージがプルされます。
-
アップストリームのレジストリ認証情報を含む Secrets Manager シークレットを作成する場合、シークレット名には
ecr-pullthroughcache/
プレフィックスを使用する必要があります。シークレットは、プルスルーキャッシュルールが作成されたのと同じアカウントとリージョンにある必要もあります。 -
プルスルーキャッシュルールを使用してマルチアーキテクチャイメージをプルすると、マニフェストリストとマニフェストリストで参照されている各イメージが Amazon ECR リポジトリにプルされます。特定のアーキテクチャのみをプルする場合は、マニフェストリストに関連付けられたタグではなく、アーキテクチャに関連付けられたイメージダイジェストまたはタグを使用してイメージをプルできます。
-
Amazon ECR は、サービスにリンクされた IAM ロールを使用します。このロールは、Amazon ECR がユーザーに代わってキャッシュされたイメージのリポジトリを作成し、認証のために Secret Manager シークレット値を取得し、キャッシュされたイメージをプッシュするために必要なアクセス許可を提供します。プルスルーキャッシュルールを作成すると、サービスにリンクされた IAM ロールが自動的に作成されます。詳細については、「プルスルーキャッシュ用の Amazon ECRサービスにリンクされたロール」を参照してください。
-
デフォルトで、キャッシュされたイメージをプルする IAM プリンシパルには、IAM ポリシーによってアクセス許可が付与されています。Amazon ECR プライベートレジストリアクセス許可ポリシーを使用して、IAM エンティティのアクセス許可のスコープをさらに設定できます。詳細については、「レジストリ許可の使用」を参照してください。
-
プルスルーキャッシュワークフローを使用して作成された Amazon ECR リポジトリは、他の Amazon ECR リポジトリと同様に処理されます。レプリケーションやイメージスキャンなど、すべてのリポジトリ機能がサポートされています。
-
Amazon ECR がプルスルーキャッシュアクションを使用してユーザーに代わって新しいリポジトリを作成すると、一致するリポジトリ作成テンプレートがない限り、次のデフォルト設定がリポジトリに適用されます。リポジトリ作成テンプレートを使用して、Amazon ECR がユーザーに代わって作成したリポジトリに適用される設定を定義できます。詳細については、「プルスルーキャッシュまたはレプリケーションアクション中に作成されたリポジトリを制御するテンプレート」を参照してください。
-
タグのイミュータビリティ — オフにすると、タグは変更可能になり上書きできます。
-
暗号化 — デフォルトの
AES256
暗号化が使用されます。 -
リポジトリ権限 — 省略。リポジトリ権限ポリシーは適用されません。
-
ライフサイクルポリシー — 省略。ライフサイクルポリシーは適用されません。
-
リソースタグ — 省略。リソースタグは適用されません。
-
-
プルスルーキャッシュルールを使用してリポジトリのイメージタグのイミュータビリティを有効にすると、Amazon ECR が同じタグを使用してイメージを更新できなくなります。
-
プルスルーキャッシュルールを使用して初めてイメージをプルする場合、インターネットへのルートが必要になる場合があります。特定の状況ではインターネットへのルートが必要になるため、障害を回避するためにルートを設定することをお勧めします。したがって、AWS PrivateLink を使用してインターフェイス VPC エンドポイントを使用するように Amazon ECR が設定されている場合は、最初のプルの際にインターネットへのルートが確立されていることを確認する必要があります。これを行う方法の 1 つは、同じ VPC にインターネットゲートウェイを持つパブリックサブネットを作成し、プライベートサブネットからインターネットへのすべてのアウトバウンドトラフィックをパブリックサブネットにルーティングすることです。プルスルーキャッシュルールを使用した後続のイメージプルでは、これは必要ありません。詳細については、Amazon Virtual Private Cloud ユーザーガイドの「ルートオプションの例」を参照してください。