gpt4 book ai didi

无法删除 Docker Registry v2 镜像

转载 作者:行者123 更新时间:2023-12-02 18:05:16 24 4
gpt4 key购买 nike

之前,我通过 API 列出图像:

   curl docker-registry:5000/v2/_catalog
{"repositories":
["tmp.eium.ems"]
}

然后我通过以下方式找到图像摘要:
curl -H "Accept: application/vnd.docker.distribution.manifest.v2+json" -X GET http://docker-registry:5000/v2/tm
p.eium.ems/manifests/latest
{
"schemaVersion": 2,
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"config": {
"mediaType": "application/vnd.docker.container.image.v1+json",
"size": 7440,
"digest": "sha256:8e9a0dfac41f87fdb04e2e9ab7bb64750e71ee58701f024e498fdbcf69c2d082"
},
...

然后我用 CLI 删除它:
[root@snap460c04 tmp]# curl -X DELETE docker-registry:5000/v2/tmp.eium.ems/blobs/sha256:8e9a0dfac41f87fdb04e2e9ab7bb64750e71ee58701f024e498fdbcf69c2d082

没有任何错误。
但是当我检查它时,图像仍然存在:
[root@snap460c04 tmp]# curl docker-registry:5000/v2/_catalog
{"repositories":["tmp.eium.ems"]}

有人不能帮忙吗?

我认为我的删除确实有效,因为如果我再次执行删除,会报错:
[root@snap460c04 tmp]# curl -X DELETE docker-registry:5000/v2/tmp.eium.ems/manifests/sha256:8e9a0dfac41f87fdb04e2e9ab7bb64750e71ee58701f024e498fdbcf69c2d082
{"errors":[{"code":"MANIFEST_UNKNOWN","message":"manifest unknown"}]}

最佳答案

Docker Registry 只是删除了 list ,但没有删除图像的 blob。为了正确删除图像,还有很多工作要做。此时,垃圾收集器does not collect untagged manifests .

我已经实现了一个脚本来从注册表中删除未标记或特定的图像。

详情请见:

https://github.com/ricardobranco777/clean_registry

关于无法删除 Docker Registry v2 镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42328301/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com