개발 팁

k8s private registry 에서 docker repository 삭제하기

북치던노인 2024. 6. 20. 13:10

1. 태그 목록 조회

curl -X GET http://{레지스트리 주소}/v2/{레파지토리명}/tags/list

1. 이미지 해시 조회

curl -sI -H "Accept: application/vnd.docker.distribution.manifest.v2+json" http://{레지스트리 주소}:32000/v2/{레파지토리명}/manifests/{태그명}

결과값에서 Docker-Content-Digest 확인

2. 삭제

curl -s -w "%{http_code}" -X DELETE http://{레지스트리 주소}/v2/{레파지토리명}/manifests/sha256:{다이제스트}

202 응답 받으면 성공

3. 가비지 컬렉트

모든 태그를 삭제 한 후

kubectl exec -n container-registry -it {파드명} -- sh

/bin/registry garbage-collect -m /etc/docker/registry/config.yml
rm -rf /var/lib/registry/docker/registry/v2/repositories/{레파지토리명}

결과 확인은 브라우저에서~

http://{레지스트리 주소}/v2/_catalog