Oracle Cloud Infrastructureドキュメント

保存ポリシーを使用したイメージの保持および削除

特定の選択基準を満たすイメージ、つまり次のようなイメージを自動的に削除するイメージ保存ポリシーを設定できます:

  • 特定の日数の間はプルされていないイメージ
  • 特定の日数に対してタグ付けされていないイメージ
  • 特定のDockerタグが与えられていないイメージ(自動削除を免除)

1時間ごとのプロセスで、選択基準に対してイメージをチェックし、選択基準を満たすイメージは自動的に削除されます。

多くの場合、イメージ保存ポリシーは、個々のイメージを手動で削除するよりも、リポジトリ内のイメージを管理する便利な方法です(「イメージの削除」を参照)。

テナンシの各リージョンには、グローバル・イメージ保持ポリシーがあります。 グローバル・イメージのデフォルトの選択基準では、イメージは自動的に削除されないように、すべてのイメージが保持されます。 ただし、指定した基準を満たすイメージが削除されるようにグローバル・イメージ保持ポリシーを変更できます。 リージョン・グローバル・イメージ保存ポリシーは、1つ以上のカスタム・イメージ保存ポリシーで明示的にオーバーライドされないかぎり、リージョン内のすべてのリポジトリに適用されます。

カスタム・イメージ保存ポリシーを設定して、リージョン内の特定のリポジトリに対して異なる基準でグローバル・イメージ保存ポリシーをオーバーライドできます。 カスタム・イメージの保存ポリシーを作成したら、ポリシーにリポジトリを追加することによって、リポジトリにカスタム保存ポリシーを適用します。 グローバル・イメージ保持ポリシーは、カスタム保存ポリシーに追加するリポジトリに適用されなくなります。

テナンシに対するmanage権限がある場合、次の操作を実行できます:

  • 各リージョン独自のグローバル・イメージ保持ポリシーの変更
  • 新規カスタム・イメージの保存ポリシーの作成
  • 既存のカスタム・イメージ保存ポリシーの基準の変更
  • カスタム・イメージ保持ポリシーの削除

リポジトリに対するmanage権限を持っている場合、次のことが可能です:

  • リポジトリをカスタム・イメージ保持ポリシーに追加
  • カスタム・イメージの保存ポリシーからリポジトリを削除

次の点に注意してください。

  • リポジトリに適用できるのは、一度に1つのカスタム・イメージ保持ポリシーのみです。 リポジトリがカスタム保存ポリシーにすでに追加されていて、別のカスタム保存ポリシーにリポジトリを追加する場合、2つ目の保存ポリシーに追加する前に、最初の保存ポリシーからポリシーを削除する必要があります。
  • イメージ保持ポリシーを作成または更新する場合、削除するイメージをチェックする時間単位プロセスは、新規または更新されたポリシーを数時間無視します。 この猶予期間を過ぎると、ポリシー基準を調整して削除するイメージのみを選択できるため、イメージが予想外に削除される可能性が減少します。 この期間を過ぎると、ポリシーは毎時プロセスに含められ、それに応じてイメージの確認と削除が行われます。
  • グローバル・イメージ保存ポリシー(および作成するカスタム・イメージ保存ポリシー)は、特定のリージョンに固有です。 テナンシ内の異なるリージョンでイメージを一貫して削除するには、同一の選択基準を持つ各リージョンでイメージ保存ポリシーを設定します。

コンソールを使用したグローバル・イメージ保持ポリシーの編集

テナンシに対するmanage権限を持っている場合、リージョン内のすべてのリポジトリに適用されるリージョン・グローバル・イメージ保存ポリシーを編集できます(ただし、カスタム・イメージ保存ポリシーに明示的に追加されたリポジトリを除く)。

グローバル・イメージ保持ポリシーを編集するには、次のようにします:

  1. コンソールで、「ナビゲーション・メニュー」を開きます。 ソリューションおよびプラットフォームの下で、開発者サービスに移動して「レジストリ」をクリックします。
  2. レジストリ・リージョンを選択します。 アクセスしたリポジトリがすべて表示されます。
  3. 「設定」をクリックし、「イメージ保持ポリシー」を選択します。

    リージョン・グローバル・イメージ保存ポリシーの現在の選択基準と、特定のリポジトリのグローバル・イメージ保存ポリシーをオーバーライドするカスタム・イメージ保存ポリシーが表示されます。

  4. 「グローバル・ポリシーの編集」をクリックします。
  5. 「グローバル・イメージ保持ポリシー」ダイアログで、グローバル保存ポリシーの新しい基準を指定します:

    • n日ではプルされていないイメージを削除します。このオプションは、指定した日数の間はプルされていないイメージを削除する場合に選択します。
    • n日付でタグ付けされていないイメージを削除するには、次のようにします。このオプションは、指定した日数に対してタグ付けされていないイメージを削除する場合に選択します。
    • 免税タグ: イメージが与えられたDockerタグに基づいて削除されないようにするには、それらのタグをカンマ区切りリストで除外するように指定します。 いずれかの免税タグが指定されているイメージは、イメージが他の基準を満たしている場合でも削除されません。 ワイルドカードとしてアスタリスク(*)を含めて、なし、1つまたは複数の文字を表すことができます。 たとえば、latest,prod-*,*-tail,*.100.*と指定します。
  6. 「設定の保存」をクリックします。

前に進むと、リージョンのグローバル・イメージ保存ポリシーに対して入力した基準は、カスタム・イメージ保存ポリシーに明示的に追加されたリポジトリを除き、リージョン内のすべてのリポジトリに適用されます。 カスタム・イメージの保存ポリシーに追加されていないリポジトリ内のイメージは、グローバル・イメージの保存ポリシーで指定した基準を満たしている場合は、Oracle Cloud Infrastructure Registryから削除されます。

イメージ保持ポリシーを作成または更新する場合、削除するイメージをチェックする時間単位プロセスは、新規または更新されたポリシーを数時間無視します。 この猶予期間を過ぎると、ポリシー基準を調整して削除するイメージのみを選択できるため、イメージが予想外に削除される可能性が減少します。 この期間を過ぎると、ポリシーは毎時プロセスに含められ、それに応じてイメージの確認と削除が行われます。

コンソールを使用した新規カスタム・イメージ保持ポリシーの作成によるグローバル・ポリシーのオーバーライド

テナンシに対してmanage権限を持っている場合は、指定したリポジトリのリージョン・グローバル・イメージ保存ポリシーをオーバーライドする新規カスタム・イメージ保存ポリシーを作成できます。 カスタム・イメージの保存ポリシーは、それを作成したリージョンに固有です。

新規カスタム・イメージの保存ポリシーを作成するには:

  1. コンソールで、「ナビゲーション・メニュー」を開きます。 ソリューションおよびプラットフォームの下で、開発者サービスに移動して「レジストリ」をクリックします。
  2. レジストリ・リージョンを選択します。 アクセスしたリポジトリがすべて表示されます。
  3. 「設定」をクリックし、「イメージ保持ポリシー」を選択します。

    リージョン・グローバル・イメージ保存ポリシーの現在の選択基準と、特定のリポジトリのグローバル・イメージ保存ポリシーをオーバーライドする既存のカスタム・イメージ保存ポリシーが表示されます。

  4. ポリシーの作成をクリックします。
  5. 「リポジトリ・イメージの保存ポリシーの作成」ダイアログで、新しい保存ポリシーの基準を指定します:

    • ポリシー名: ポリシーに対する選択の名前。 機密情報を入力しないでください。
    • n日ではプルされていないイメージを削除します。このオプションは、指定した日数の間はプルされていないイメージを削除する場合に選択します。
    • n日付でタグ付けされていないイメージを削除するには、次のようにします。このオプションは、指定した日数に対してタグ付けされていないイメージを削除する場合に選択します。
    • 免税タグ: イメージが与えられたDockerタグに基づいて削除されないようにするには、それらのタグをカンマ区切りリストで除外するように指定します。 いずれかの免税タグが指定されているイメージは、イメージが他の基準を満たしている場合でも削除されません。 ワイルドカードとしてアスタリスク(*)を含めて、なし、1つまたは複数の文字を表すことができます。 たとえば、latest,prod-*,*-tail,*.100.*と指定します。
  6. 「設定の保存」をクリックします。

これで、新しいカスタム保存ポリシーにリポジトリを追加できます。

コンソールを使用したカスタム・イメージ保持ポリシーからのリポジトリの削除

リポジトリに対してmanage権限を持っている場合は、以前に追加されたカスタム・イメージ保持ポリシーからリポジトリを削除できます。

カスタム・イメージの保存ポリシーからリポジトリを削除する場合があります:

  • リージョン・グローバル・イメージの保存ポリシーをリポジトリに適用する場合
  • 異なるカスタム・イメージの保存ポリシーをリポジトリに適用する場合(リポジトリに一度に適用できるカスタム・イメージの保存ポリシーは1つのみ)。

カスタム・イメージの保存ポリシーからリポジトリを削除するには:

  1. コンソールで、「ナビゲーション・メニュー」を開きます。 ソリューションおよびプラットフォームの下で、開発者サービスに移動して「レジストリ」をクリックします。
  2. レジストリ・リージョンを選択します。 アクセスしたリポジトリがすべて表示されます。
  3. 「設定」をクリックし、「イメージ保持ポリシー」を選択します。

    リージョン・グローバル・イメージ保存ポリシーの現在の選択基準と、特定のリポジトリのグローバル・イメージ保存ポリシーをオーバーライドする既存のカスタム・イメージ保存ポリシーが表示されます。

  4. リポジトリが追加されているカスタム・イメージ保持ポリシーを探します。
  5. リポジトリ名の横にある削除アイコンをクリックして、カスタム・イメージの保存ポリシーから削除します。

先に進むと、リージョン・グローバル・イメージの保存ポリシーがリポジトリに適用されます(リポジトリを別のカスタム・イメージ保存ポリシーに追加しない場合)。 リポジトリ内のイメージは、グローバル・イメージ保存ポリシーで指定されている基準を満たす場合に、Oracle Cloud Infrastructure Registryから削除されます。

イメージ保持ポリシーを作成または更新する場合、削除するイメージをチェックする時間単位プロセスは、新規または更新されたポリシーを数時間無視します。 この猶予期間を過ぎると、ポリシー基準を調整して削除するイメージのみを選択できるため、イメージが予想外に削除される可能性が減少します。 この期間を過ぎると、ポリシーは毎時プロセスに含められ、それに応じてイメージの確認と削除が行われます。

コンソールを使用したカスタム・イメージ保持ポリシーへのリポジトリの追加

リポジトリでmanage権限を持っている場合は、既存のカスタム・イメージ保持ポリシーにリポジトリを追加できます。

カスタム・イメージの保存ポリシーをすでにリポジトリに適用している場合は、別のポリシーに追加する前に、現在のポリシーからリポジトリを削除する必要があります。 カスタム・イメージの保存ポリシーは、それが作成されたリージョンに固有であることにも注意してください。

既存のカスタム・イメージ保存ポリシーにリポジトリを追加するには:

  1. コンソールで、「ナビゲーション・メニュー」を開きます。 ソリューションおよびプラットフォームの下で、開発者サービスに移動して「レジストリ」をクリックします。
  2. レジストリ・リージョンを選択します。 アクセスしたリポジトリがすべて表示されます。
  3. 「設定」をクリックし、「イメージ保持ポリシー」を選択します。

    リージョン・グローバル・イメージ保存ポリシーの現在の選択基準と、特定のリポジトリのグローバル・イメージ保存ポリシーをオーバーライドするように定義されているカスタム・イメージ保存ポリシーが表示されます。

  4. リポジトリを追加するカスタム・イメージ保持ポリシーを探します。
  5. 「リポジトリを追加」をクリックし、カスタム・イメージの保存ポリシーに追加するリポジトリをリストから選択します。

    リポジトリ・リストには、リポジトリを保存ポリシーに追加する権限があるかどうかに関係なく、リージョン内のすべてのリポジトリが含まれることに注意してください。 リポジトリを保存ポリシーに追加できるのは、そのリポジトリに対するmanage権限がある場合のみです。

    リストのリポジトリの横にポリシー名がある場合、リポジトリはすでにポリシーに追加されています。 リポジトリを別のポリシーに追加する前に、まず最初のポリシーから削除する必要があります。

先に進むと、リポジトリを追加したカスタム保存ポリシーによって、リージョン・グローバル・イメージの保存ポリシーがオーバーライドされます。 リポジトリ内のイメージは、カスタム保存ポリシーで指定されている基準を満たす場合、Oracle Cloud Infrastructure Registryから削除されます。

イメージ保持ポリシーを作成または更新する場合、削除するイメージをチェックする時間単位プロセスは、新規または更新されたポリシーを数時間無視します。 この猶予期間を過ぎると、ポリシー基準を調整して削除するイメージのみを選択できるため、イメージが予想外に削除される可能性が減少します。 この期間を過ぎると、ポリシーは毎時プロセスに含められ、それに応じてイメージの確認と削除が行われます。