एकाधिक टैग docker छवि बनाएं


147

docker pull ubuntu एक से अधिक टैग चित्र प्राप्त करेंगे।

क्या ubuntu की तरह एक डॉकरीफाइल द्वारा कई टैग बनाना संभव है ?

ubuntu                  13.10               9f676bd305a4        2 weeks ago         182.1 MB
ubuntu                  saucy               9f676bd305a4        2 weeks ago         182.1 MB
ubuntu                  raring              eb601b8965b8        2 weeks ago         170.2 MB
ubuntu                  13.04               eb601b8965b8        2 weeks ago         170.2 MB
ubuntu                  12.10               5ac751e8d623        2 weeks ago         161.4 MB
ubuntu                  quantal             5ac751e8d623        2 weeks ago         161.4 MB
ubuntu                  10.04               9cc9ea5ea540        2 weeks ago         183 MB
ubuntu                  lucid               9cc9ea5ea540        2 weeks ago         183 MB
ubuntu                  12.04               9cd978db300e        2 weeks ago         204.7 MB
ubuntu                  latest              9cd978db300e        2 weeks ago         204.7 MB
ubuntu                  precise             9cd978db300e        2 weeks ago         204.7 MB

यहाँ, मुझे जो चाहिए वह है अलग-अलग सामग्री के लिए टैग। (एक ही सामग्री कई उर्फ ​​टैग के साथ नहीं)


1
संबंधित प्रश्न: stackoverflow.com/questions/22080706/…
मार्क बटलर

जवाबों:


79

आप Dockerfiles के साथ टैग नहीं बना सकते हैं, लेकिन आप कमांड लाइन के माध्यम से अपनी छवियों पर कई टैग बना सकते हैं।

अपनी छवि आईडी सूचीबद्ध करने के लिए इसका उपयोग करें:

$ docker images

फिर टैग करें:

$ docker tag 9f676bd305a4 ubuntu:13.10
$ docker tag 9f676bd305a4 ubuntu:saucy
$ docker tag eb601b8965b8 ubuntu:raring
...

4
मुख्य बिंदु डॉकरफाइल में है, इन आदेशों को डॉकरफाइल में नहीं लिखा जा सकता है।
डैनियल वाईसी लिन

1
इस उत्तर को इस तरह से देखें कि आईडी को मैन्युअल रूप से निकालने से बचा जाए।
जोनाथन रेनहार्ट

437

1.10 रिलीज़ होने के बाद , अब आप बिल्ड पर एक साथ कई टैग जोड़ सकते हैं:

docker build -t name1:tag1 -t name1:tag2 -t name2 .

स्रोत: डॉक बिल्ड के साथ कई टैग जोड़ने की क्षमता जोड़ें


5
मुझे लगता है कि निर्माण प्रक्रिया में उपयोग में आसानी के लिए यह अधिक सही उत्तर है
पीतलकाज़ू

यह उचित नहीं है, क्योंकि विभिन्न संस्करण के लिए उबंटू का टैग, सामग्री अलग है।
डैनियल वाईसी लिन

2
हालांकि मुझे ये टैग एक पुश के बाद रिपॉजिटरी में कैसे दिखाई देंगे? दुर्भाग्य से, केवल एक जिसे मैं पुश कमांड में उपयोग करता हूं, वह रेपो में दिखाई देता है।
Czechnology

4
यहां तक कि 2018 के अंत में डोकर अभी भी इस संबंध में अविश्वसनीय रूप से अपरिपक्व है, प्रत्येक 'टैग' चाहिए अभी भी एक ही छवि से जुड़ी होने के बावजूद अलग से धकेल दिया। यहां जो आवश्यक है, वह Git टैग के समान कुछ क्षमता है।
एड रान्डेल

-8

यह कैसे न करें:

छवि बनाते समय, आप इसे इस तरह टैग भी कर सकते हैं।

docker build -t ubuntu:14.04 .

फिर आप इसे एक और टैग के साथ फिर से बनाते हैं:

docker build -t ubuntu:latest .

यदि आपका डॉकरीफाइल कैश का अच्छा उपयोग करता है, तो उसी छवि को बाहर आना चाहिए, और यह प्रभावी रूप से उसी छवि को फिर से तैयार करने के समान है। यदि आप करते हैं docker imagesतो आप देखेंगे कि उनके पास एक ही आईडी है।

वहाँ शायद एक मामला है जहाँ यह गलत हो जाता है ... लेकिन @ david-braun ने कहा, आप खुद Dockerfiles के साथ टैग नहीं बना सकते हैं, बस docker कमांड के साथ।


3
मैं यह जोड़ सकता हूं कि ऐसा करना @ david-braun क्लीनर है।
कसावा

14
दो बार निर्माण मत करो। इस जवाब को देखें ।
जोनाथन रेनहार्ट

निर्माण दो बार CI / CD की धारणा को हरा देता है ... दूसरी संकलन निर्भरता के आधार पर अंतर हो सकता है ... यह सभी समय में है।
रिचर्ड

4
इस उत्तर को स्पष्ट करने के लिए 'यह कैसे करना है नहीं' के साथ अब कुछ समझ में आता है कि यह कैसे काम करता है।
एड रान्डेल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.