我想检查我的私有Docker注册表中是否存在特定层。为此,我将检查blob是否存在:HEAD /v2/<name>/blobs/<digest>
。
我的问题是找到图层摘要。我已经尝试过使用layer.DiffID [使用DiffID = SHA256hex(uncompressed layer tar data)
计算],但是因为DiffID不是图层摘要而无法正常工作。
任何人都知道如何计算/生成图层摘要?
Layer_Digest使用sha256sum(compressed_layer)
和...计算
compressed_layer=gzip.NewWriter(uncompressed_layer)
。
要获得压缩层,您需要使用GOlang gzip实现。只有GOlang gzip正确返回压缩层,并且使用此压缩层,已经可以生成注册表中存在的摘要。