gcr에 오래된 image가 계속 쌓여서 사용하지 않을 image를 일괄 삭제하는 스크립트를 정리해본다.
gcr에 등록된 docker image 중에 tag가 지정되어 있지 않은 image 일괄 삭제 스크립트
export IMG_NAME="This-is-test-image" # docker image명
gcloud container images list-tags $IMG_NAME --filter='-tags:*' --format="get(digest)" | xargs -I{} gcloud container images delete $IMG_NAME@"{}" --quiet
앞 부분: tag가 지정되어 있지 않은(--filter='-tags:*'
) docker image명을 조회하는데 hash값만 출력(--format="get(digest)"
)
export IMG_NAME="This-is-test-image" # docker image명
gcloud container images list-tags $IMG_NAME --filter='-tags:*' --format="get(digest)"
뒷 부분: 앞에서 출력된 hash값을 xargs
로 받아서 조용히(--quiet
) gcr에서 삭제
export IMG_NAME="This-is-test-image" # docker image명
xargs -I{} gcloud container images delete $IMG_NAME@"{}" --quiet