Cloud/Docker
Docker Private Registry에 등록된 이미지 지우기
퐁스
2019. 12. 30. 15:29
이미지 조회
curl -X GET [Registry Address]/v2/_catalog
이미지 태그 조회
curl -X GET [Registry Address]/v2/[Image Name]/tags/list
Docker Digest 얻기
curl -v --silent -H "Accept: application/vnd.docker.distribution.manifest.v2+json" -X GET [Registry Address]/v2/[Image Name]/manifests/[Tags] | grep Docker-Content-Digest
sha:~로 시작하는 애가 필요한 애다.
이미지 삭제하기
curl -v --silent -H "Accept: application/vnd.docker.distribution.manifest.v2+json" -X DELETE [Registry Address]/v2/[Image Name]/manifests/[sha256:]
가비지 콜렉션 실행
docker exec -it [Registry] bin/registry garbage-collect /etc/docker/registry/config.yml
문제는 이렇게 해도 조회했을 때 이미지가 나타난다.
# curl -X GET [Registry Address]/v2/[Image Name]/tags/list
{"name":"[Image Name]","tags":null}
어쩔 수 없이 물리적으로 지워준다.
docker exec -it [Registry] /bin/sh
/ # cd /var/lib/registry/docker/registry/v2/repositories/
/var/lib/registry/docker/registry/v2/repositories # ls
[Image 목록 나옴]
/var/lib/registry/docker/registry/v2/repositories # rm -rf [Image]
/var/lib/registry/docker/registry/v2/repositories # exit
이렇게 하면 말끔하게 사라진다.