खोज…


वाक्य - विन्यास

  • डॉकटर चित्र [विकल्प] [रिपोर्ट [: TAG]]
  • डॉकटर निरीक्षण [विकल्प] कंटेनर | छवि [कंटेनर | छवि ...]
  • docker पुल [विकल्प] NAME [: TAG | @DIGEST]
  • docker rmi [विकल्प] छवि [छवि ...]
  • docker टैग [विकल्प] IMAGE [: TAG] [REGISTRYHOST /] [USERNAME /] NAME [: TAG]

डॉकर हब से एक छवि प्राप्त करना

आमतौर पर, छवियों को डॉकर हब से स्वचालित रूप से खींच लिया जाता है। Docker किसी भी छवि को Docker Hub से खींचने का प्रयास करेगा जो पहले से ही Docker होस्ट पर मौजूद नहीं है। उदाहरण के लिए, docker run ubuntu का उपयोग करते हुए जब ubuntu छवि पहले से ही डॉकर होस्ट पर नहीं है, तो डोकर नवीनतम ubuntu छवि का एक पुल शुरू करने का कारण होगा। डॉकर हब से मैन्युअल रूप से लाने या छवि को अपडेट करने के लिए docker pull का उपयोग करके एक छवि को अलग से खींचना संभव है।

docker pull ubuntu
docker pull ubuntu:14.04

एक अलग छवि रजिस्ट्री से खींचने या एक छवि के विशिष्ट संस्करण को खींचने के लिए अतिरिक्त विकल्प मौजूद हैं। एक वैकल्पिक रजिस्ट्री का संकेत पूर्ण छवि नाम और वैकल्पिक संस्करण का उपयोग करके किया जाता है। उदाहरण के लिए, निम्नलिखित कमांड ubuntu:14.04 को खींचने का प्रयास करेगी ubuntu:14.04 की registry.example.com से छवि ubuntu:14.04 रजिस्ट्री:

docker pull registry.example.com/username/ubuntu:14.04

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

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              693bce725149        6 days ago          967 B
postgres            9.5                 0f3af79d8673        10 weeks ago        265.7 MB
postgres            latest              0f3af79d8673        10 weeks ago        265.7 MB

चित्र संदर्भित करना

डॉकर कमांड जो एक छवि का नाम लेता है, चार अलग-अलग रूपों को स्वीकार करता है:

प्रकार उदाहरण
शॉर्ट आईडी 693bce725149
नाम hello-world (चूक :latest टैग)
नाम + टैग hello-world:latest
संग्रह hello-world@sha256:e52be8ffeeb1f374f440893189cd32f44cb166650e7ab185fa7735b7dc48d619

नोट: आप केवल एक छवि को उसके पाचन द्वारा संदर्भित कर सकते हैं यदि उस छवि को मूल रूप से उस पाचन का उपयोग करके खींचा गया था। एक छवि के लिए डाइजेस्ट को देखने के लिए (यदि कोई उपलब्ध है) docker images --digests

छवियाँ निकालना

छवियाँ हटाने के लिए docker rmi कमांड का उपयोग किया जाता है:

docker rmi <image name>

एक छवि को निकालने के लिए पूर्ण छवि नाम का उपयोग किया जाना चाहिए। जब तक रजिस्ट्री नाम को हटाने के लिए छवि को टैग नहीं किया गया है, इसे निर्दिष्ट करने की आवश्यकता है। उदाहरण के लिए:

docker rmi registry.example.com/username/myAppImage:1.3.5

इसके बजाय उनकी आईडी द्वारा छवियों को निकालना भी संभव है:

docker rmi 693bce725149

एक सुविधा के रूप में, छवि आईडी के केवल कुछ वर्णों को निर्दिष्ट करके उनकी छवि आईडी द्वारा छवियों को निकालना संभव है, जब तक कि निर्दिष्ट विकल्प असंदिग्ध है:

docker rmi 693

नोट: छवियों को हटाया जा सकता है भले ही उस छवि का उपयोग करने वाले मौजूदा कंटेनर हों; docker rmi बस छवि को "अनटैग" करती है।

यदि कोई कंटेनर छवि का उपयोग नहीं कर रहा है तो यह कचरा-एकत्र है। यदि कोई कंटेनर किसी छवि का उपयोग करता है, तो एक बार सभी कंटेनर हटा दिए जाने पर छवि कचरा-एकत्र हो जाएगी। उदाहरण के लिए:

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED                  STATUS                     PORTS               NAMES
5483657ee07b        hello-world         "/hello"            Less than a second ago   Exited (0) 2 seconds ago                       small_elion

$ docker rmi hello-world
Untagged: hello-world:latest

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED                  STATUS                      PORTS               NAMES
5483657ee07b        693bce725149        "/hello"            Less than a second ago   Exited (0) 12 seconds ago                       small_elion

बिना आरंभ किए कंटेनरों के साथ सभी छवियां निकालें

उन सभी स्थानीय छवियों को हटाने के लिए, जिनके कंटेनर नहीं हैं, आप एक पैरामीटर के रूप में छवियों की एक सूची प्रदान कर सकते हैं:

docker rmi $(docker images -qa)

सभी छवियाँ निकालें

यदि आप छवियों को हटाना चाहते हैं, भले ही उनके पास प्रारंभ कंटेनर हो या नहीं, बल ध्वज ( -f ) का उपयोग करें:

docker rmi -f $(docker images -qa)

डैंगलिंग छवियां निकालें

यदि किसी चित्र को टैग नहीं किया गया है और किसी कंटेनर द्वारा उपयोग नहीं किया जा रहा है, तो यह 'झूलना' है और इसे इस तरह हटाया जा सकता है:

docker images -q --no-trunc -f dangling=true | xargs -r docker rmi

छवियों के लिए डॉकर हब खोजें

आप खोज आदेश का उपयोग करके छवियों के लिए डॉकर हब खोज सकते हैं:

docker search <term>

उदाहरण के लिए:

$ docker search nginx
NAME                      DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
nginx                     Official build of Nginx.                        3565      [OK]
jwilder/nginx-proxy       Automated Nginx reverse proxy for docker c...   717                  [OK]
richarvey/nginx-php-fpm   Container running Nginx + PHP-FPM capable ...   232                  [OK]
...

छवियों का निरीक्षण

docker inspect <image>

आउटपुट JSON फॉर्मेट में है। आप केवल इच्छित कुंजियों को पार्स और प्रिंट करने के लिए jq कमांड लाइन उपयोगिता का उपयोग कर सकते हैं।

docker inspect <image> | jq -r '.[0].Author'

उपरोक्त कमांड छवियों के लेखक का नाम दिखाएगा।

छवियों को टैग करना

एक छवि को टैग करना विभिन्न छवि संस्करणों का ट्रैक रखने के लिए उपयोगी है:

docker tag ubuntu:latest registry.example.com/username/ubuntu:latest

टैगिंग का दूसरा उदाहरण:

docker tag myApp:1.4.2 myApp:latest
docker tag myApp:1.4.2 registry.example.com/company/myApp:1.4.2

डॉकर चित्रों को सहेजना और लोड करना

docker save -o ubuntu.latest.tar ubuntu:latest

यह कमांड ubuntu:latest को बचाएगा ubuntu:latest निर्देशिका में ubuntu.latest.tar नाम के साथ वर्तमान निर्देशिका में एक टारबॉल संग्रह के रूप में। इस टारबॉल संग्रह को दूसरे होस्ट में ले जाया जा सकता है, उदाहरण के लिए rsync का उपयोग करना, या संग्रहण में संग्रहीत करना।

एक बार टारबॉल ले जाने के बाद, निम्न कमांड फाइल से एक इमेज बनाएगी:

docker load -i /tmp/ubuntu.latest.tar

अब ubuntu:latest से कंटेनर बनाना संभव है ubuntu:latest हमेशा की तरह ubuntu:latest छवि।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow