Docker: मशीन पर इंस्टॉल करना
Debian, Ubuntu और AlmaLinux पर Docker सही तरीके से कैसे इंस्टॉल करें, ऑफ़िशियल रिपॉज़िटरी सिस्टम पैकेज से बेहतर क्यों है, और इंस्टॉलेशन के तुरंत बाद क्या जाँचें।
23 अगस्त 2026 को अपडेट किया गया
Docker किसी एप्लिकेशन को उसके पूरे एनवायरनमेंट के साथ एक कंटेनर में पैक कर देता है: आपको लाइब्रेरी वर्शन मिलाने की ज़रूरत नहीं पड़ती, और दूसरी मशीन पर शिफ़्ट होना सिर्फ़ एक कॉन्फ़िग फ़ाइल कॉपी करने की बात रह जाती है। पूरे root एक्सेस वाले VDS पर यह स्टैंडर्ड तरीके से इंस्टॉल हो जाता है।
आधिकारिक रिपॉज़िटरी से इंस्टॉल करें
सिस्टम रिपॉज़िटरी में या तो पुराना वर्शन होता है या Compose v2 प्लगइन के बिना docker.io। यह फ़र्क़ मायने रखता है: ऑनलाइन आधी गाइडें आधुनिक docker compose के लिए लिखी गई हैं, docker-compose के लिए नहीं।
Debian 12 और 13, Ubuntu 22.04 / 24.04 / 26.04:
sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo $VERSION_CODENAME) stable" | sudo tee /etc/apt/sources.list.d/docker.list
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Ubuntu के लिए, दो जगहों पर debian की जगह ubuntu लिखें।
AlmaLinux 9 और 10, CentOS Stream 9:
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
इंस्टॉलेशन जाँचें
docker --version
docker compose version
sudo docker run --rm hello-world
docker info | grep -E "Storage Driver|Cgroup|Docker Root Dir"
अगर hello-world डाउनलोड होकर अपना ग्रीटिंग प्रिंट कर दे, तो सब कुछ काम कर रहा है। स्टोरेज ड्राइवर overlay2 होना चाहिए।
sudo के बिना काम करना
sudo usermod -aG docker $USER
newgrp docker
dockerग्रुप root के बराबर है। इसमें शामिल कोई भी व्यक्ति होस्ट root माउंट करके कंटेनर चला सकता है और एडमिनिस्ट्रेटर बन सकता है। सिर्फ़ उन्हीं लोगों को जोड़ें जिन्हें आप वैसे भी root सौंप देंगे — और एप्लिकेशन को यह कभी न दें।
अभी क्या कॉन्फ़िगर करें
लॉग्स सीमित करें, वरना एक ज़्यादा बोलने वाला कंटेनर आपकी डिस्क खा जाएगा। /etc/docker/daemon.json बनाएँ:
{
"log-driver": "json-file",
"log-opts": { "max-size": "20m", "max-file": "3" }
}
sudo systemctl restart docker
ज़्यादा जानकारी — कंटेनर लॉग्स।
कितनी जगह लेता है
Docker ख़ुद लगभग 500 MB का है; इमेज और वॉल्यूम इसके ऊपर बढ़ते जाते हैं। 40 GB डिस्क वाले VDS-1 पर दो-तीन सर्विसें फ़िट हो जाती हैं, लेकिन जगह पर नज़र रखनी पड़ेगी: देखें डिस्क स्पेस।
आम गलतियाँ
- आपने
docker.ioऔरdocker-ceमिला दिए। पहलेsudo apt remove docker.io docker-compose, फिर आधिकारिक रिपॉज़िटरी से इंस्टॉल करें। - Docker ने फ़ायरवॉल को बायपास करके पोर्ट खोल दिया। Docker अपने ख़ुद के
iptablesनियम लिखता है, औरufwउन्हें नहीं देखता। अगर पोर्ट बाहर एक्सपोज़ करने की ज़रूरत नहीं है, तो उसे लोकल इंटरफ़ेस पर पब्लिश करें —-p 127.0.0.1:8080:80। ज़्यादा जानकारी Docker नेटवर्किंग में। - AlmaLinux पर systemctl में
--nowभूल गए। सर्विस enabled है लेकिन शुरू नहीं हुई; रीबूट के बाद काम करेगी, लेकिन अभी नहीं।
आगे: Docker Compose और वॉल्यूम।