निजी डॉकर रजिस्ट्री से टैग हटाने का आसान तरीका?

मेरे पास एक निजी डॉकर रजिस्ट्री है, वी 2.6.0, जिसमें एक छवि पर कई टैग किए गए संस्करण हैं:

foo/bar:1foo/bar:1_keep    (same image as 1)foo/bar:2foo/bar:3foo/bar:latest    (same image as 3)

मैं आवश्यक रूप से छवि को हटाए बिना एक टैग को हटाना चाहता हूं । इसलिए यदि मैं टैग 2 हटाता हूं, तो छवि को हटाना ठीक है क्योंकि कुछ और इसका संदर्भ नहीं देता है । लेकिन अगर मैं टैग 1 हटाता हूं, तो केवल उस टैग को जाना चाहिए, छवि नहीं ।

यह इस तरह एक एपीआई अनुरोध का सुझाव देता है:

DELETE http://repo/v2/foo/bar/tags/1

लेकिन यह मुझे 404 देता है । इसके बजाय मुझे मैनिफेस्ट को हटाना होगा, जिसका अर्थ है कि यह जाँचने का सारा काम करना कि यह किसी अन्य टैग द्वारा उपयोग में नहीं है ।

मैंने स्रोत को देखा https://github.com/fraunhoferfokus/deckschrubber और यह जांचने में खुद को परेशान नहीं करता है कि पांडुलिपि को हटाना सुरक्षित है । क्या मुझे कुछ याद आ रहा है?

क्या ऐसा करने का एक बेहतर तरीका है? यदि नहीं, तो क्यों नहीं, और क्या यह तय होने की संभावना है?

वर्तमान में है किसी विशिष्ट टैग को हटाने के लिए कोई एपीआई नहीं. सैद्धांतिक रूप से आप किसी मौजूदा टैग में एक नया (संभवतः खाली) प्रकट कर सकते हैं, और फिर उसे हटा सकते हैं । अन्यथा, आप अपने क्लीनअप रूटीन में सभी टैग और मैनिफेस्ट को ट्रैक करना चाहेंगे ताकि यह पता लगाया जा सके कि क्या हटाना सुरक्षित है ।


अद्यतन करें:

टैग हटाना अब 1.0 में जोड़ा गया था ओसीआई वितरण-कल्पना. उस के साथ, पुल अनुरोध (#3427) वितरण/वितरण के लिए अनुमोदित किया गया था जो रजिस्ट्री छवि के लिए अपस्ट्रीम है । इसे 3.0 रिलीज़ का मील का पत्थर मिला, इसलिए यह एक ऐसी सुविधा हो सकती है जो भविष्य में जुड़ जाए ।

मैं भी काम कर रहा हूं regclient जो टैग डिलीट एपीआई दोनों को लागू करता है, और एक खाली मैनिफेस्ट को धकेलने और उसे हटाने के लिए वापस आ जाता है । एक सीएलआई के लिए, रेगक्लिएंट में रेगक्टल शामिल है जो इस तरह दिखेगा:

regctl tag rm registry:5000/repo:tag