Skip to content
VDS · Docker اور کنٹینرز

Docker: مشین پر انسٹالیشن

Debian، Ubuntu اور AlmaLinux پر Docker درست طریقے سے کیسے انسٹال کریں، سرکاری ریپوزٹری سسٹم پیکج سے کیوں بہتر ہے، اور انسٹالیشن کے فوراً بعد کیا جانچیں۔

اپ ڈیٹ 23 اگست، 2026

Docker ایک ایپلیکیشن کو اس کے پورے ماحول سمیت ایک کنٹینر میں پیک کرتا ہے: آپ کو لائبریری ورژنز ملانے کی ضرورت نہیں رہتی، اور دوسری مشین پر منتقل ہونا صرف ایک کنفگ فائل کاپی کرنے تک محدود ہو جاتا ہے۔ مکمل root رسائی والے VDS پر یہ معیاری طریقے سے انسٹال ہوتا ہے۔

آفیشل ریپوزٹری سے انسٹال کریں

سسٹم ریپوزٹریز میں یا تو پرانا ورژن ہوتا ہے یا docker.io بغیر Compose v2 پلگ ان کے۔ فرق اہم ہے: آن لائن آدھی گائیڈز جدید 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 بھول گئے۔ سروس enable ہے مگر start نہیں ہوئی؛ ری بوٹ کے بعد کام کرے گی، لیکن ابھی نہیں۔

اگلا: Docker Compose اور والیومز۔