بازگشت وجه تا ۷ روز پس از خرید، در صورت عدم رضایت از سرویسضمانت بازگشت وجه تا ۷ روز

نصب داکر در ایران : آموزش کامل به همراه مثال (2026)

نویسنده:ارش اسدی

دسته بندی:

مشخصات مقاله

  • تاریخ انتشار

  • آخرین به روزرسانی

  • زمان مطالعه۶ دقیقه

  • دیدگاه هااولین نفر باشید

فهرست مطالب
  1. ۱مقدمه: چالش‌های نصب داکر در ایران و راهکارهای عبور از آن
  2. ۲پیش‌نیازها برای نصب داکر در ایران
  3. ۳گام ۱: تنظیم DNS تحریم‌شکن برای دسترسی به مخازن Docker Hub
  4. ۴گام ۲: آماده‌سازی سرستم‌عامل و نصب هسته داکر
  5. ۵گام ۳: بهینه‌سازی نصب داکر در ایران با مخازن داخلی (ابرآروان)
  6. ۶گام ۴: مدیریت کانتینرها با Docker Compose
  7. ۷گام ۵: تنظیم فایروال سرور مجازی برای امنیت
  8. ۸اسکریپت نصب خودکار داکر:
    1. نحوه استفاده از اسکریپت:
    2. خروجی نمونه اجرای اسکریپت:
  9. ۹جمع‌بندی نهایی و فراخوان به اقدام

مقدمه: چالش‌های نصب داکر در ایران و راهکارهای عبور از آن

فرایند نصب داکر در ایران همواره به دلیل تحریم‌های سخت‌گیرانه اینترنتی و مسدود بودن دسترسی کاربران ایرانی به مخازن رسمی Docker Hub، یکی از چالش‌های بزرگ برنامه‌نویسان و مدیران سرور بوده است. دریافت خطای معروف 403 (Forbidden) در زمان Pull کردن ایمیج‌ها، اتفاقی آشناست. اما جای نگرانی نیست!

با استفاده از DNSهای تحریم‌شکن معتبر مانند شکن، الکترو و بگذر (403) و همچنین بهره‌گیری از مخازن (Mirror) داخلی قدرتمند مانند ابرآروان و docker.ir، می‌توانید به راحتی محدودیت‌ها را دور زده و نصب داکر در ایران را روی سرور اوبونتو 22.04 یا 24.04 با موفقیت انجام دهید.

داکر (Docker) یک پلتفرم متن‌باز است که به شما امکان می‌دهد برنامه‌ها و وابستگی‌های آن‌ها را در کانتینرهای سبک، سریع و ایزوله بسته‌بندی کنید. این راهنمای جامع از بلاگ ایران وی ام، شما را قدم‌به‌قدم برای راه‌اندازی این محیط هدایت می‌کند.

همچنین بخوانید: آموزش ساخت DNS گیمینگ اختصاصی (2026)

نصب داکر در ایران
آموزش گام‌به‌گام نصب داکر در ایران روی سرور لینوکس

پیش‌نیازها برای نصب داکر در ایران

قبل از شروع تایپ دستورات در محیط ترمینال، مطمئن شوید موارد زیر را در اختیار دارید:

  • سرور مجازی اوبونتو: با حداقل 2 گیگابایت رم، 2 هسته CPU و 20 گیگابایت فضای ذخیره‌سازی SSD. پیشنهاد ما استفاده از سرورهای پایدار ایرانی (مانند سرور مجازی رسپینا) است.
  • دسترسی کاربر ریشه (Root): برای اجرای دستورات سیستمی با پیشوند Sudo.
  • آی‌پی‌های DNS تحریم‌شکن: شکن (178.22.122.100)، الکترو (78.157.42.100) یا رادار.
  • زمان تقریبی انجام کار: حدود ۱۵ الی ۳۰ دقیقه.

گام ۱: تنظیم DNS تحریم‌شکن برای دسترسی به مخازن Docker Hub

اولین و مهم‌ترین قدم برای نصب داکر در ایران، دور زدن سیستم مسدودسازی شرکت داکر است. برای این کار باید مسیر درخواست‌های سرور (DNS Resolver) خود را تغییر دهید.

  1. اتصال به سرور لینوکس:
    code
    ssh root@your-server-ip

    (آی‌پی سرور مجازی ایرانی خود را جایگزین کنید).

  2. تهیه نسخه پشتیبان از تنظیمات شبکه:
    code
    sudo cp /etc/resolv.conf /etc/resolv.conf.bak

    (این کار برای جلوگیری از اختلال در شبکه انجام می‌شود).

  3. تزریق آی‌پی‌های تحریم‌شکن (مثال: شکن):
    code
    sudo bash -c 'echo -e "nameserver 178.22.122.100\nnameserver 185.51.200.2" > /etc/resolv.conf'
  4. جلوگیری از بازنویسی خودکار DNS توسط سیستم:
    code
    sudo chattr +i /etc/resolv.conf
  5. تست صحت عملکرد شبکه:
    code
    ping hub.docker.com

    (اگر پکت‌های پینگ با موفقیت برگشت داده شدند، یعنی تحریم‌ها را با موفقیت دور زده‌اید).

گام ۲: آماده‌سازی سرستم‌عامل و نصب هسته داکر

اکنون که ارتباط ما با دنیای خارج برقرار است، باید پکیج‌های رسمی را روی اوبونتو نصب کنیم.

  1. به‌روزرسانی پکیج‌های سیستم:
    code
    sudo apt update && sudo apt upgrade -y
    sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
  2. دریافت و افزودن کلید امنیتی (GPG Key) داکر:
    code
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  3. معرفی مخزن رسمی داکر به اوبونتو:
    code
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  4. نصب نهایی داکر و ابزارهای جانبی:
    code
    sudo apt update
    sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

    (نکته: بر خلاف بسیاری از آموزش‌های قدیمی، ما ابزار حیاتی docker-compose را نیز در این مرحله نصب کردیم تا نیازی به نصب مجدد نداشته باشید).

گام ۳: بهینه‌سازی نصب داکر در ایران با مخازن داخلی (ابرآروان)

برای اینکه سرعت دریافت ایمیج‌ها بالا برود و وابستگی شما به DNSهای تحریم‌شکن کمتر شود، بهتر است موتور داکر خود را به مخازن داخلی (Mirrors) متصل کنید.

  1. اضافه کردن کاربر فعلی به گروه داکر (حذف نیاز به Sudo):
    code
    sudo usermod -aG docker $USER
    newgrp docker
  2. تنظیم مخزن ابرآروان در فایل پیکربندی:
    code
    sudo bash -c 'cat > /etc/docker/daemon.json <

    پس از این کار، سرویس داکر را یکبار ری‌استارت کنید: sudo systemctl restart docker.

  3. دریافت یک ایمیج تستی (مثلاً Nginx) با سرعت بالا:
    code
    docker pull docker.arvancloud.ir/nginx
  4. راه‌اندازی کانتینر:
    code
    docker run -d -p 80:80 --name my-nginx docker.arvancloud.ir/nginx

گام ۴: مدیریت کانتینرها با Docker Compose

مدیریت اپلیکیشن‌های چندگانه بدون Docker Compose بسیار دشوار است. برای ساخت یک ساختار ایزوله می‌توانید یک فایل کانفیگ بسازید:

  1. ساخت فایل YML:
    code
    version: '3'
    services:
      web:
        image: docker.arvancloud.ir/nginx
        ports:
          - "8082:80"
  2. این کد را در فایلی به نام docker-compose.yml ذخیره کرده و با دستور docker-compose up -d آن را در بک‌گراند سرور مجازی خود اجرا کنید.

گام ۵: تنظیم فایروال سرور مجازی برای امنیت

برای اطمینان از اینکه ترافیک کانتینرهای شما امن است، پورت‌های داکر را در فایروال UFW باز کنید:

code
sudo apt install ufw -y
sudo ufw allow 80/tcp
sudo ufw allow 8080/tcp
sudo ufw enable

(برای توضیحات بیشتر در خصوص امنیت سرور، می‌توانید به مقاله اقدامات جلوگیری از دیداس و آموزش UFW مراجعه کنید).


اسکریپت نصب خودکار داکر:

bash
#!/bin/bash

# ================================================
# Optimized Docker Installation Script for Iranian VPS
# With better DNS, mirrors, and error handling
# ================================================

set -euo pipefail

# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'

log() {
    echo -e "[$(date '+%Y-%m-%d %H:%M:%S')] $1"
}

handle_error() {
    log "${RED}Error: $1${NC}"
    exit 1
}

# Check if running as root
if [[ $EUID -ne 0 ]]; then
    handle_error "This script must be run as root (use sudo)"
fi

log "${YELLOW}Starting Docker installation on Iranian VPS...${NC}"

# ================================================
# 1. Configure DNS (Cloudflare + Shecan)
# ================================================
log "Configuring DNS servers..."
cat > /etc/resolv.conf </dev/null || true
fi

# ================================================
# 2. Configure Iranian apt mirror
# ================================================
log "Configuring fastest Iranian apt mirror..."
bash <(curl -Ls --ipv4 https://raw.githubusercontent.com/Arash-Ariaye/irvm/refs/heads/main/smirror.sh) || \ log "${YELLOW}Warning: Iranian apt mirror setup failed, continuing...${NC}" # ================================================ # 3. Update system and install prerequisites # ================================================ log "Updating package lists..." apt-get update -qq || handle_error "apt update failed" log "Installing prerequisites..." apt-get install -y --no-install-recommends \ apt-transport-https \ ca-certificates \ curl \ gnupg \ software-properties-common \ lsb-release || handle_error "Failed to install prerequisites" # ================================================ # 4. Install Docker using official method # ================================================ log "Adding Docker official GPG key..." curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg || \ handle_error "Failed to download Docker GPG key" log "Setting up Docker repository..." echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null || handle_error "Failed to setup Docker repository"

log "Updating apt after adding Docker repo..."
apt-get update -qq || handle_error "apt update after Docker repo failed"

log "Installing Docker components..."
apt-get install -y \
    docker-ce \
    docker-ce-cli \
    containerd.io \
    docker-buildx-plugin \
    docker-compose-plugin || handle_error "Docker installation failed"

# ================================================
# 5. Configure ArvanCloud mirror for Docker
# ================================================
log "Configuring ArvanCloud Docker mirror..."
mkdir -p /etc/docker
cat > /etc/docker/daemon.json < /dev/null && systemctl is-active --quiet docker; then
    docker_version=$(docker --version)
    log "${GREEN}✅ Docker installed successfully: ${docker_version}${NC}"
    
    # Test pull with mirror
    log "Testing hello-world image pull..."
    docker run --rm hello-world | head -n 5 || \
        log "${YELLOW}Warning: hello-world test had issues (may need more time).${NC}"
else
    handle_error "Docker installation verification failed"
fi

log "${GREEN}🎉 Docker installation and configuration completed successfully!${NC}"
echo ""
echo -e "${GREEN}Helpful commands:${NC}"
echo "• Run without sudo: docker run hello-world"
echo "• View logs: journalctl -u docker -f"
echo "• ArvanCloud mirror is now active"

نحوه استفاده از اسکریپت:

  1. اسکریپت بالا را کپی کرده و در فایلی به نام install_docker_ir.sh ذخیره کنید.
  2. مجوز اجرا را صادر کنید: chmod +x install_docker_ir.sh
  3. فایل را اجرا نمایید: sudo ./install_docker_ir.sh

خروجی نمونه اجرای اسکریپت:

code
[2026-08-25 14:30:00] Configuring Docker daemon for ArvanCloud mirror...
[2026-08-25 14:30:01] Logging out from Docker and restarting service...
[2026-08-25 14:30:01] Docker logout completed or no login found
[2026-08-25 14:30:03] Docker service restarted successfully
[2026-08-25 14:30:03] ✅ Installation and configuration completed successfully!
[2026-08-25 14:30:03] 💡 Tip: Test Docker with: docker run hello-world

جمع‌بندی نهایی و فراخوان به اقدام

این آموزش به طور کامل به شما نشان داد که چطور چالش‌های نصب داکر در ایران را پشت سر بگذارید و روی سرور اوبونتو 22.04 یا نسخه‌های جدیدتر، با کمک DNSهای تحریم‌شکن (شکن، الکترو و غیره) و مخازن داخلی پایدار مانند ابرآروان، محیط ایزوله و قدرتمند خود را برای توسعه راه‌اندازی کنید.

برای استقرار کانتینرهای خود آماده‌اید؟
برای میزبانی ایمن پروژه‌های داکری خود در بستری بدون قطعی و با پینگ فوق‌العاده پایین، همین حالا پلن‌های قدرتمند سرور مجازی ایران را از ایران وی ام (IRVM) بررسی کنید!

این مقاله چطور بود؟

گزینه ای را که بیشتر با نظرتان جور است انتخاب کنید.

دیدگاه ها

هنوز دیدگاهی ثبت نشده است، اولین نفر باشید.

دیدگاه خود را بنویسید

از وبلاگ ایران وی ام

مقالات مرتبط

چند مقاله نزدیک به همین موضوع که شاید برایتان مفید باشد.

همه مقالات لینوکس