プルスルーキャッシュ、プッシュ時作成、またはレプリケーションアクション中に作成されたリポジトリを制御するテンプレート - Amazon ECR

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

プルスルーキャッシュ、プッシュ時作成、またはレプリケーションアクション中に作成されたリポジトリを制御するテンプレート

Amazon ECR リポジトリ作成テンプレートを使用して、Amazon ECR がユーザーに代わって作成するリポジトリ用の設定を定義します。リポジトリ作成テンプレートの設定はリポジトリの作成時にのみ適用され、既存のリポジトリや他の方法で作成されたリポジトリには影響しません。現在、リポジトリ作成テンプレートを使用すると、リポジトリの作成時に以下の機能に対して設定を適用できます。

  • プルスルーキャッシュ

  • プッシュ時に作成する

  • レプリケーション

リポジトリ作成テンプレートの仕組み

Amazon ECR がユーザーに代わって新しいプライベートリポジトリを作成する必要がある場合があります。例えば、次のようになります。

  • プルスルーキャッシュルールを初めて使用して、アップストリームリポジトリのコンテンツを取得し、Amazon ECR プライベートレジストリに保存する場合。

  • イメージがまだ存在しないリポジトリにプッシュする場合。

  • Amazon ECR にリポジトリを別のリージョンまたはアカウントにレプリケートさせる場合。

プルスルーキャッシュルールまたはレプリケートされたリポジトリに一致するリポジトリ作成テンプレートがない場合、Amazon ECR は新しいリポジトリのデフォルト設定を使用します。これらのデフォルト設定には、タグの不変性をオフにする、AES-256 暗号化を使用する、リポジトリやライフサイクルポリシーを一切適用しないなどが含まれます。

イメージプッシュのターゲットリポジトリに一致するリポジトリ作成テンプレートがない場合、Amazon ECR はデフォルト設定でリポジトリを作成しません。

リポジトリ作成テンプレートを使用すると、Amazon ECR がプルスルーキャッシュ、プッシュ時作成、レプリケーションアクションを通じて作成された新しいリポジトリに適用する設定を定義できます。新しいリポジトリのタグ不変性、暗号化設定、リポジトリ権限、ライフサイクルポリシー、リソースタグを定義できます。

次の図は、リポジトリ作成テンプレートを使用するときに Amazon ECR が使用するワークフローを示しています。

リポジトリ作成テンプレートを新しいリポジトリに適用する方法を示しています。

以下では、リポジトリ作成テンプレートの各パラメータについて詳しく説明します。

Prefix

[プレフィックス] は、テンプレートに関連付けるリポジトリ名前空間のプレフィックスです。このプレフィックスを使用して作成されたすべてのリポジトリには、このテンプレートで定義されている設定が適用されます。例えば、prod というプレフィックスは、prod/ で始まるすべてのリポジトリに適用されます。同様に、prod/team というプレフィックスは、prod/team/ で始まるすべてのリポジトリに適用されます。2 つのテンプレートを含むレジストリでは、1 つのテンプレートにプレフィックス「prod」が付いており、もう 1 つのテンプレートにプレフィックス「prod/team」が付いている場合、名前が「prod/team/」で始まるすべてのリポジトリに、プレフィックス「prod/team」が付いているテンプレートが適用されます。

作成テンプレートが関連付けられていないレジストリ内のすべてのリポジトリにテンプレートを適用するには、プレフィックスとして ROOT を使用できます。

重要

プレフィックスの末尾には常に / が適用されると想定されます。ecr-public をプレフィックスとして指定すると、Amazon ECR はそれを ecr-public/ として扱います。プルスルーキャッシュルールを使用する場合、ルール作成時に指定するリポジトリプレフィックスは、リポジトリ作成テンプレートのプレフィックスとしても指定する必要があります。

説明

この [テンプレートの説明] はオプションで、リポジトリ作成テンプレートの目的を説明するために使用されます。

適用対象

[適用対象] 設定は、このテンプレートを使用して作成する Amazon ECR 作成リポジトリを決定します。有効な値は PULL_THROUGH_CACHECREATE_ON_PUSH、および REPLICATION です。例えば、プルスルーキャッシュルールを初めて使用して、アップストリームリポジトリのコンテンツを取得し、Amazon ECR プライベートレジストリに保存します。プルスルーキャッシュルールに一致するリポジトリ作成テンプレートがない場合、Amazon ECR は新しいリポジトリのデフォルト設定を使用します。

リポジトリ作成ロール

[リポジトリ作成ロール] は、リポジトリ作成テンプレートを使用してリポジトリを作成および設定する際に、Amazon ECR が引き受ける IAM ロール ARN です。このロールは、テンプレートでリポジトリタグや KMS を使用する場合に指定する必要があります。指定しないと、リポジトリの作成は失敗します。

イメージタグの変更可能性

テンプレートを使用して作成されたリポジトリに使用するタグの変更可能性設定です。このパラメータを省略すると、MUTABLE のデフォルト設定が使用されます。デフォルト設定では、イメージタグの上書きが許可されます。これは、プルスルーキャッシュアクションによって作成されたリポジトリに使用されるテンプレートに使用することを推奨する設定です。これにより、タグが同じ場合でも Amazon ECR はキャッシュされたイメージを更新できます。

IMMUTABLE を指定すると、リポジトリ内のすべてのイメージタグは不変となり、上書きが禁止されます。

暗号化設定
重要

AWS KMS (DSSE-KMS) を使用した二層式サーバー側の暗号化は、 AWS GovCloud (US) リージョンでのみ使用できます。

テンプレートを使用して作成されたリポジトリに使用する暗号化設定です。

KMS 暗号化タイプを使用する場合、リポジトリのコンテンツは、 AWS KMSに保存されている AWS Key Management Service キーにより、サーバー側の暗号化を使用して暗号化されます。 AWS KMS を使用してデータを暗号化する場合、Amazon ECR のデフォルトの AWS マネージド AWS KMS キーを使用するか、既に作成した独自の AWS KMS キーを指定できます。さらに、 で単層または二層暗号化を使用するように選択できます AWS KMS。詳細については、「保管中の暗号化」を参照してください。KMS 暗号化タイプを使用していて、それをクロスリージョンレプリケーションで使用する場合は、追加のアクセス許可が必要になることがあります。詳細については、「Creating a KMS key policy for replication」を参照してください。

AES256 の暗号化タイプを使用する場合、Amazon ECR は Amazon S3 で管理された暗号化キーによりサーバー側の暗号化キーを使用して、AES-256 暗号化アルゴリズムを使用するリポジトリ内のイメージを暗号化します。詳細については、「Amazon Simple Storage Service ユーザーガイド」の「Amazon S3 マネージドキーによるサーバー側の暗号化 (SSE-S3)」を参照してください。

リポジトリ権限

テンプレートを使用して作成されたリポジトリに適用するリポジトリポリシーです。リポジトリポリシーは、リソースベースのアクセス権限を使用してリポジトリへのアクセスを制御します。リソースベースのアクセス権限により、どの IAM ユーザーあるいはロールがリポジトリにアクセスでき、どのようなアクションを実行できるかを指定できます。デフォルトでは、リポジトリを作成した AWS アカウントのみがリポジトリにアクセスできます。リポジトリへの追加のアクセス許可を付与または拒否するポリシードキュメントを適用できます。詳細については、「Amazon ECR でのプライベートリポジトリポリシー」を参照してください。

リポジトリライフサイクルポリシー

テンプレートを使用して作成されたリポジトリに使用するライフサイクルポリシーです。ライフサイクルポリシーを使用すると、プライベートリポジトリ内のイメージのライフサイクル管理をより詳細に制御できます。ライフサイクルポリシーは 1 つまたは複数のルールで、各ルールでは Amazon ECR へのアクションが定義されています。時間やカウント数に基づいてイメージの有効期限を設定することによってコンテナイメージを自動的にクリーンアップできます。詳細については、「Amazon ECR でのライフサイクルポリシーを使用したイメージのクリーンアップの自動化」を参照してください。

リソースタグ

リソースタグは、リポジトリに適用し、分類と整理に役立つメタデータです。各タグはキーとオプションの値で構成され、どちらもお客様側が定義します。クロスリージョンレプリケーションでリポジトリ作成テンプレートを使用する場合は、このアクセス許可を宛先レジストリポリシーに適用する必要があります。