डॉकर चीटशीट

कुछ आम डॉकर कमांड पैरामीटर

Page content

यहाँ एक Docker टिप्पणी शीट है जो महत्वपूर्ण कमांड और डॉकर के इस्तेमाल से लेकर कंटेनर चलाने और साफ करने तक के अवधारणाओं को कवर करती है:

डॉकर लॉगो

इंस्टॉलेशन

यूबंटू पर

sudo apt install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
sudo apt update
sudo apt install docker-ce
sudo systemctl start docker

डॉकर कंपोज़ इंस्टॉलेशन

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose --version

सामान्य डॉकर कमांड

संस्करण और सिस्टम जानकारी

docker version          # डॉकर CLI और डैमोन के संस्करण दिखाता है
docker system info      # अपने डॉकर वातावरण के बारे में डेटा सूचीबद्ध करता है
docker help             # मदद सूची देखें
docker <command> --help # एक विशिष्ट कमांड के लिए मदद जानकारी देखें

लॉगिन और लॉगआउट

docker login            # डॉकर हब पर लॉगिन करें
docker logout           # डॉकर हब से लॉगआउट करें

इमेज प्रबंधन

इमेज सूची

docker images           # सभी इमेजों की सूची
docker images -a        # सभी इमेजों की सूची, शामिल मध्यवर्ती इमेजों के साथ

इमेज खींचें

docker pull <image-name:version> # डॉकर हब से एक इमेज डाउनलोड करें

इमेज बनाएं

docker build -t <image-name> . # वर्तमान डिरेक्टरी के Dockerfile से एक इमेज बनाएं
docker build -f <Dockerfile-path> -t <image-name> . # एक विशिष्ट Dockerfile से एक इमेज बनाएं
docker build --build-arg foo=bar . # बिल्ड आर्ग्यूमेंट के साथ एक इमेज बनाएं
docker build --pull . # FROM निर्देशों में उल्लेखित इमेजों के अपडेटेड संस्करण खींचें
docker build --quiet . # आउटपुट निकाले बिना एक इमेज बनाएं

टैग और पुश इमेज

docker tag <local-image-name> <username>/<preferred-image-name>
docker push <username>/<preferred-image-name>

इमेज हटाएं

docker rmi <image-name>        # एक विशिष्ट इमेज हटाएं
docker image prune             # अप्रयोगित इमेजों को हटाएं
docker image prune -a          # सभी अप्रयोगित इमेजों को हटाएं

डैंगिंग इमेज हटाएं

docker rmi $(docker images --filter "dangling=true" -q --no-trunc)

इमेज अनटैग करें

docker rmi repository/image-name:tag

कंटेनर प्रबंधन

कंटेनर चलाएं

docker run -itd --name <container-name> <image-name> # डिटैच्ड मोड में एक कंटेनर चलाएं
docker run -it -p <host-port>:<docker-port> <image-name> # पोर्ट मैपिंग के साथ एक कंटेनर चलाएं
docker run -it --name <container-name> <image-name> # इंटरैक्टिव रूप से एक कंटेनर चलाएं

कंटेनर सूची

docker ps                  # चल रहे कंटेनरों की सूची
docker ps -a               # सभी कंटेनरों की सूची
docker ps -s               # CPU और मेमोरी उपयोग के साथ चल रहे कंटेनरों की सूची

कंटेनर को शुरू, बंद और फिर से शुरू करें

docker start <container-name>   # बंद कंटेनर को शुरू करें
docker stop <container-name>    # चल रहे कंटेनर को बंद करें
docker restart <container-name> # कंटेनर को फिर से शुरू करें

कंटेनर हटाएं

docker rm <container-name>      # बंद कंटेनर को हटाएं
docker rm -f <container-name>   # कंटेनर को बलपूर्वक हटाएं
docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q) # सभी कंटेनर हटाएं

सभी बंद कंटेनर हटाएं

docker container prune

कंटेनर से जुड़ें

docker attach <container-name>  # चल रहे कंटेनर से जुड़ें
docker exec -it <container-name> bash # एक चल रहे कंटेनर में इंटरैक्टिव रूप से एक कमांड चलाएं

कंटेनर की जांच करें

docker inspect <container-name> # कंटेनर की जांच करें
docker logs <container-name>    # कंटेनर के लॉग्स देखें
docker port <container-name>    # कंटेनर के पोर्ट मैपिंग देखें

नेटवर्क प्रबंधन

docker network ls            # सभी नेटवर्कों की सूची
docker network create <network-name> # एक नए नेटवर्क के निर्माण
docker network rm <network-name>    # एक नेटवर्क हटाएं

वॉल्यूम प्रबंधन

docker volume ls             # सभी वॉल्यूमों की सूची
docker volume create <volume-name> # एक नए वॉल्यूम के निर्माण
docker volume rm <volume-name>    # एक वॉल्यूम हटाएं
docker run -v <host-path>:<container-path> <image-name> # एक वॉल्यूम माउंट करें

डॉकर कंपोज़

मूल कमांड

docker-compose up           # docker-compose.yml में परिभाषित सेवाओं को शुरू करें
docker-compose up -d        # डिटैच्ड मोड में सेवाओं को शुरू करें
docker-compose down         # सेवाओं को बंद और हटाएं
docker-compose ps           # चल रही सेवाओं की सूची
docker-compose logs         # सेवाओं के लॉग्स देखें
docker-compose start        # सेवाओं को शुरू करें
docker-compose stop         # सेवाओं को बंद करें
docker-compose pause        # सेवाओं को रोकें
docker-compose unpause      # सेवाओं को बंद न करें

डॉकरफाइल कमांड

डॉकरफाइल से इमेज बनाएं

docker build -t <image-name> <Dockerfile-path> # एक डॉकरफाइल से इमेज बनाएं

डॉकरफाइल का उदाहरण

FROM <base-image>
RUN <command>
COPY <source> <destination>
EXPOSE <port>
CMD ["<command>", "<argument>"]

सुरक्षा और रहस्य

डॉकर रहस्य

docker secret create <secret-name> <file> # एक रहस्य बनाएं
docker secret ls                         # सभी रहस्यों की सूची
docker secret rm <secret-name>          # एक रहस्य हटाएं

डॉकर सुरक्षा

  • डॉकर रहस्यों का उपयोग केंद्रीय रूप से संवेदनशील डेटा के प्रबंधन और उसे कंटेनरों में सुरक्षित रूप से भेजने के लिए करें।
  • रहस्य ट्रांसमिशन के दौरान और डॉकर स्वार्म में विश्राम के दौरान एन्क्रिप्ट किए जाते हैं।

साफ करें

अप्रयोगित संसाधन हटाएं

docker system prune          # अप्रयोगित डेटा (इमेज, कंटेनर, नेटवर्क, वॉल्यूम) हटाएं
docker image prune           # अप्रयोगित इमेज हटाएं
docker container prune       # अप्रयोगित कंटेनर हटाएं
docker network prune         # अप्रयोगित नेटवर्क हटाएं
docker volume prune          # अप्रयोगित वॉल्यूम हटाएं

अटैग्ड इमेज हटाएं

कभी-कभी एक बड़े अच्छे कंपाइल के बाद docker images कमांड से ऐसी तस्वीर आती है:

बहुत सारी अटैग्ड इमेजें

इन इमेजों को हटाने के लिए जो टैग हैं:

docker rmi $(docker images --filter “dangling=true” -q --no-trunc)

ऊपर दिए गए आदेश पुराने और अनुचित हैं। dangling=true पैरामीटर अब अप्रचलित है। इसके बजाय उपयोग करें:

docker system prune

यह आपको निम्नलिखित के बारे में चेतावनी देगा:

चेतावनी! यह निम्नलिखित को हटाएगा:
	- सभी बंद कंटेनर
	- कम से कम एक कंटेनर द्वारा उपयोग किए जाने वाले अप्रयोगित वॉल्यूम
	- कम से कम एक कंटेनर द्वारा उपयोग किए जाने वाले अप्रयोगित नेटवर्क
	- सभी डैंगिंग इमेजें

आप इस चेतावनी के बारे में हां कह सकते हैं…

यह टिप्पणी शीट डॉकर कंटेनरों, इमेजों, नेटवर्कों, वॉल्यूमों आदि के प्रबंधन के लिए आवश्यक कमांड और अवधारणाओं को कवर करती है। अधिक गहराई से जानने के लिए, ऑनलाइन उपलब्ध विस्तृत मार्गदर्शिकाओं और ट्यूटोरियल्स के संदर्भ में जाएं।

उपयोगी लिंक