正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

パッケージレジストリのストレージを削減する

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

パッケージレジストリは、時間の経過とともにパッケージとそのアセットを蓄積します。定期的なクリーンアップを行わないと、:

  • パッケージリストのフェッチに時間がかかり、CI/CDパイプラインのパフォーマンスに影響します。
  • サーバーは、未使用または古いパッケージに対してより多くのストレージ容量を割り当てます。
  • ユーザーは、多数の古いパッケージバージョンの間で関連するパッケージを見つけるのに苦労する可能性があります。

定期的なクリーンアップポリシーを実装して、パッケージレジストリの肥大化を軽減し、ストレージを解放する必要があります。

パッケージレジストリのストレージ使用量を確認する

ストレージの使用状況の内訳を確認するには:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 設定 > 使用量クォータを選択します。
  3. 使用量クォータページで、パッケージの使用状況の内訳を確認します。

パッケージを削除する

パッケージレジストリにパッケージを公開した後、編集することはできません。代わりに、パッケージを削除して再公開する必要があります。

前提要件:

  • メンテナーロール以上が必要です。

パッケージを削除するには、次の手順に従います:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトまたはグループを見つけます。
  2. デプロイ > パッケージレジストリを選択します。
  3. パッケージレジストリページで、削除するパッケージを選択します。
    • または、パッケージレジストリページで、縦方向の省略記号( ellipsis_v )を選択し、パッケージの削除を選択します。
  4. 削除を選択します。

パッケージは完全に削除されます。

パッケージを削除するには、APIを使用することもできます。

リクエスト転送が有効になっているときにパッケージを削除すると、依存関係の混乱リスクが発生する可能性があります。

パッケージアセットの削除

ストレージを削減するには、パッケージに関連付けられたアセットを削除します。

前提要件:

  • デベロッパーロール以上が必要です。

パッケージアセットを削除するには:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトまたはグループを見つけます。
  2. デプロイ > パッケージレジストリを選択します。
  3. パッケージレジストリページで、詳細を表示するパッケージを選択します。
  4. アセットテーブルで、削除するアセットの名前を見つけます。
  5. 縦方向の省略記号( ellipsis_v )を選択し、アセットを削除を選択します。

パッケージアセットは完全に削除されます。

パッケージを削除するには、APIを使用することもできます。

クリーンアップポリシー

パッケージレジストリに同じ名前とバージョンのパッケージをアップロードすると、より多くのアセットがパッケージに追加されます。

ストレージ容量を節約するには、最新のアセットのみを保持する必要があります。クリーンアップポリシーを使用して、プロジェクト内のパッケージアセットを自動的に削除するルールを定義します。これにより、手動で削除する必要がなくなります。

クリーンアップポリシーを有効にする

前提要件:

  • メンテナーロール以上が必要です。

デフォルトでは、パッケージのクリーンアップポリシーは無効になっています。有効にするには、次の手順に従います:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 設定 > パッケージとレジストリを選択します。
  3. パッケージレジストリを展開します。
  4. パッケージアセットで使用されたストレージを管理アセットで使用されたストレージの管理]で、ルールを適切に設定します。

利用可能なルール

  • Number of duplicated assets to keep: パッケージ形式によっては、同じアセットの複数のコピーがサポートされる場合があります。保持する重複アセットの数に制限を設定できます。制限に達すると、最も古いアセットが自動的に削除されます。Mavenスナップショットによって生成されるものなど、一意のファイル名は重複アセットとしてカウントされません。

  • Number of duplicated assets to keep12時間ごとに実行されます。

リソースを節約するためにクリーンアップ制限を設定する

バックグラウンドプロセスは、パッケージのクリーンアップポリシーを実行します。このプロセスは、完了までに長い時間がかかる場合があり、実行中にサーバーリソースを消費します。

次の設定を使用して、クリーンアップワーカーの数を制限します:

  • package_registry_cleanup_policies_worker_capacity: 同時に実行されるクリーンアップワーカーの最大数。この数は、0以上である必要があります。小さい数から始めて、バックグラウンドワーカーが使用するリソースをモニタリングした後で増やすことをおすすめします。すべてのワーカーを削除してクリーンアップポリシーを実行しないようにするには、この設定を0に設定します。デフォルト値は2です。