GCP で Container Registry のイメージを全件一括削除する方法
GCP で Container Registry のイメージを全件一括削除する方法についてです。
確認時のバージョン
❯ gcloud --version
Google Cloud SDK 453.0.0
bq 2.0.98
core 2023.10.27
gcloud-crc32c 1.0.0
gsutil 5.27
ブラウザの GUI でぽちぽちやるのでもよいですが gcloud
の方がかんたんで速いです。
IMAGE_NAME='...'
gcloud container images list-tags "${IMAGE_NAME}" --format='get(digest)' | \
xargs -I {} -P0 \
gcloud container images delete "${IMAGE_NAME}@{}" --quiet --force-delete-tags
gcloud container images list-tags
でタグの一覧を取得して gcloud container images delete
で削除を行います。
間違うと危険なので暴発しないように注意が必要です。
IMAGE_NAME
は gcr.io/[PROJECT]/[IMAGE]
などです。
xargs
の -P
: パラレルモード。最大で指定された数までプロセスを増やす。 -P0
だと可能なかぎり増やす。
-P maxprocs, --max-procs=maxprocs
Parallel mode: run at most maxprocs invocations of utility at once.
If maxprocs is set to 0, xargs will run as many processes as possible.