Docker روی Linux Mint

آموزش نصب Docker روی Linux Mint؛ روش امن، خطاهای رایج و نکات مهم

Linux Mint برای توسعه‌ دهندگان محبوب است، اما نصب Docker روی آن نیازمند دقت بیشتری نسبت به Ubuntu خام است؛ چون Mint مشتق Ubuntu است و باید مخزن درست با نسخه پایه هماهنگ شود.

این مقاله برای کاربرانی است که روی لپ‌تاپ یا سیستم کاری Linux Mint دارند و می‌خواهند محیط‌های WordPress، Laravel، Node.js، دیتابیس و ابزارهای DevOps را با Docker اجرا کنند. هدف، نصب تمیز و جلوگیری از خطاهای رایج apt، codename و permission است.

Linux Mint و مسئله نسخه پایه Ubuntu

Docker برای بعضی توزیع‌ها مستندات رسمی مستقیم دارد. Linux Mint معمولاً به عنوان مشتق Ubuntu کار می‌کند؛ بنابراین باید بدانید Mint شما بر پایه کدام Ubuntu ساخته شده است. استفاده از codename اشتباه باعث خطاهای Release file، package not found یا نصب ناقص می‌شود.

cat /etc/os-release
# به مقدارهای VERSION_CODENAME و UBUNTU_CODENAME دقت کنید.

نصب Docker Engine روی Mint

sudo apt-get update
sudo apt-get remove -y docker.io docker-doc docker-compose podman-docker containerd runc || true
sudo apt-get install -y ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
. /etc/os-release
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu ${UBUNTU_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

تست نصب و اجرای اولین سرویس

sudo docker run hello-world
docker --version
docker compose version
mkdir -p ~/mint-docker-test && cd ~/mint-docker-test
cat > compose.yml <<'YAML'
services:
  web:
    image: nginx:alpine
    ports:
      - "8080:80"
    restart: unless-stopped
YAML
docker compose up -d

بعد از اجرا، آدرس http://localhost:8080 را باز کنید. اگر صفحه باز نشد، با docker ps و docker logs وضعیت سرویس را ببینید.

چالش‌ها و خطاهای رایج

خطا علت راه‌حل
Repository does not have a Release file codename اشتباه است از UBUNTU_CODENAME استفاده کنید.
docker-ce پیدا نمی‌شود مخزن درست اضافه نشده docker.list و apt update را بررسی کنید.
Cannot connect to Docker daemon سرویس اجرا نیست یا دسترسی ندارید systemctl status docker و گروه docker را بررسی کنید.
Compose command not found پلاگین نصب نشده یا دستور قدیمی می‌زنید docker compose version را اجرا کنید.
پورت باز نیست publish یا firewall مشکل دارد docker ps و firewall را بررسی کنید.

بهترین روش استفاده از Docker روی Mint

  • برای هر پروژه یک compose.yml جدا داشته باشید.
  • داده دیتابیس را در volume مشخص ذخیره کنید.
  • فایل .env را در Git عمومی نگذارید.
  • مصرف منابع را با docker stats بررسی کنید.
  • اگر سیستم مشترک است، گروه docker را عمومی نکنید.
  • برای سرور تولیدی، از توزیع سرور پایدار استفاده کنید.
docker stats
docker system df
docker ps -a

سوالات متداول Docker روی Linux Mint

آیا Linux Mint برای Docker مناسب است؟

برای توسعه و کار دسکتاپ بله، اما برای سرور تولیدی بهتر است Debian یا Ubuntu Server انتخاب شود.

چرا باید UBUNTU_CODENAME را بررسی کنم؟

چون Mint مشتق Ubuntu است و مخزن Docker باید با نسخه Ubuntu پایه هماهنگ باشد.

Docker Desktop لازم است یا Docker Engine کافی است؟

برای بیشتر کارهای توسعه، Docker Engine کافی است. Docker Desktop رابط گرافیکی و تجربه دسکتاپ می‌دهد.

چرا apt مخزن Docker را پیدا نمی‌کند؟

معمولاً codename اشتباه، کلید GPG ناقص یا apt update ناموفق است.

چرا Docker روی Mint کند است؟

ممکن است image زیاد، دیسک کند، RAM کم یا پروژه روی مسیر نامناسب باشد.

جمع‌بندی: Docker روی Linux Mint برای توسعه عالی است، اما باید نسخه پایه Ubuntu، مخزن رسمی، بسته‌های متداخل و دسترسی کاربر درست تنظیم شود.