概要
API を使って削除する方法を紹介します
環境
- Ubuntu 22.04
- docker registry 2.8.3
- docker 27.0.3
削除 API の実行
registry='your-registry-domain:5000'
name='image_name'
curl -v -sSL -X DELETE "https://${registry}/v2/${name}/manifests/$(
curl -sSL -I \
-H "Accept: application/vnd.docker.distribution.manifest.v2+json" \
"https://${registry}/v2/${name}/manifests/$(
curl -sSL "https://${registry}/v2/${name}/tags/list" | jq -r '.tags[0]'
)" \
| awk '$1 == "docker-content-digest:" { print $2 }' \
| tr -d $'\r' \
)"
3つAPIをコール必要があります
- タグを取得
- タグのハッシュを取得
- ハッシュを元に削除
ディレクトリも削除する
-
sudo rm -rf registry/docker/registry/v2/repositories/image_name
これを削除しないと v2/_catalog で表示されてしまいます
最後に
必ずディレクトリまで削除するようにしましょう
0 件のコメント:
コメントを投稿