آموزش جامع نصب داکر در دبیان

آموزش مراحل نصب داکر روی دبیان
Avatar
نویسنده: سانیا عبدی‌پور
دوشنبه 28 اردیبهشت 1405
مطالعه: ۱۲ دقیقه ۰ نظر ۱۲ بازدید

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

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

برای شروع نصب داکر روی دبیان، بهتر است ابتدا چند نکته فنی را بررسی کنید. داکر برای اجرای پایدار به محیطی سازگار نیاز دارد، بنابراین اولین قدم بررسی موارد زیر است:

  • داکر برای عملکرد بهینه، به نسخه‌های ۶۴ بیتی دبیان نیاز دارد. برای نصب داکر از نسخه‌های Debian Trixie 13 ،Debian Bookworm 12 و Debian Bullseye 11 استفاده کنید.
  • داشتن سطح دسترسی کاربر Root یا Sudo.
  • به‌روزرسانی پکیج‌های سیستم با دستور:
apt update && apt upgrade
  • داشتن ابزارهایی مانند ca-certificates، curl، gnupg و lsb-release برای اضافه کردن مخزن رسمی Docker ضروری هستند.
  • حذف کردن نسخه‌های قدیمی Docker.
  • دسترسی به مخازن (Repository) داکر.

نکته:

در برخی مواقع کاربران داخل ایران ممکن است برای دریافت بسته‌ها از مخازن اصلی داکر با محدودیت‌هایی مواجه شوند. برای رفع این مشکل، پارس‌پک میرورهای اختصاصی خود را ارائه کرده است. استفاده از این میرورها علاوه بر دسترسی پایدارتر، سرعت دریافت بسته‌ها را نیز افزایش می‌دهد.

داکر چیست و چه کاربردهایی دارد؟ پاسخ را در مقاله زیر بخوانید:

داکر چیست؟

مراحل نصب Docker در Debian

در این بخش مراحل نصب Docker را روی سیستم‌های مبتنی بر Debian قدم‌به‌قدم آموزش می‌دهیم تا با کمترین خطا و به ساده‌ترین روش، داکر روی سیستم شما نصب شود.

مرحله اول: حذف نسخه‌های قبلی Docker و بسته‌های مرتبط

اگر نسخه‌های قبلی داکر روی سیستم فعال باشند، ممکن است با نصب جدید تداخل ایجاد کنند. بنابراین ابتدا باید تمام بسته‌های مرتبط حذف شوند:

sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-doc podman-docker containerd runc | cut -f1)

با اجرای این دستور، پکیج‌های متداخل از سیستم حذف می‌شوند تا زمینه برای نصب جدید آماده شود.

مرحله دوم: به‌روزرسانی لیست پکیج‌ها و نصب پیش‌نیازها

پیش از دانلود و نصب داکر، باید لیست پکیج‌های سیستم را به‌روز کرده و ابزارهای مقدماتی لازم را نصب کنید. در ترمینال بنویسید:

sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-doc podman-docker containerd runc | cut -f1)

این دو بسته امکان برقراری ارتباط امن با مخازن نرم‌افزار را فراهم می‌کنند.

مرحله سوم: دریافت و اضافه کردن کلید امنیتی داکر

کلید امنیتی یا GPG برای تایید اعتبار بسته‌های داکر لازم است. مسیر مربوط به کلید را ایجاد کرده و سپس کلید اصلی داکر را به سیستم اضافه کنید:

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

این کلید تضمین می‌کند فایل‌هایی که از مخزن داکر دریافت می‌شوند، معتبر و از منبع رسمی هستند.

مرحله چهارم: افزودن مخزن Docker به تنظیمات سیستم

در این مرحله باید مخزن داکر را به تنظیمات پکیج‌منیجر اضافه کنید تا بتوانید بسته‌ها را از منبع اصلی داکر نصب کنید:

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 > /dev/null

این مخزن بسته‌های رسمی داکر برای نسخه‌های مختلف Debian را فراهم می‌کند.

مرحله پنجم: به‌روزرسانی نهایی و نصب Docker

در پایان، لیست پکیج‌ها را دوباره آپدیت کرده و بسته‌های اصلی داکر را نصب کنید:

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

بعد از اجرای این دستور، Docker به‌طور کامل روی سیستم شما نصب خواهد شد و آماده استفاده است.

بررسی صحت نصب Docker

پس از نصب Docker روی دبیان، بهتر است از درست بودن فرایند نصب و اجرای صحیح سرویس داکر اطمینان حاصل کنید. برای این کار می‌توانید چند بررسی ساده انجام دهید تا مطمئن شوید موتور داکر بدون مشکل روی سیستم شما اجرا می‌شود.

در ابتدا نسخه نصب‌شده داکر را بررسی کنید. این کار نشان می‌دهد که ابزار خط فرمان Docker به‌درستی روی سیستم نصب شده است. برای مشاهده نسخه داکر دستور زیر را اجرا کنید.

docker --version

در صورتی که نصب به‌درستی انجام شده باشد، خروجی این دستور نسخه Docker Engine نصب‌شده روی سیستم را نمایش می‌دهد.

 

در مرحله بعد، وضعیت سرویس داکر را بررسی کنید تا مطمئن شوید این سرویس در حال اجرا است. برای مشاهده وضعیت سرویس از دستور زیر استفاده کنید.

sudo systemctl status docker

اگر سرویس داکر فعال باشد، وضعیت آن به‌صورت active (running) نمایش داده می‌شود. در صورتی که سرویس اجرا نشده باشد، می‌توانید آن را با دستور زیر به‌صورت دستی فعال کنید.

sudo systemctl start docker

برای اطمینان کامل از عملکرد صحیح داکر، می‌توانید یک کانتینر آزمایشی اجرا کنید. داکر یک ایمیج تستی به نام hello-world ارائه می‌دهد که برای همین منظور طراحی شده است. با اجرای دستور زیر، این ایمیج دانلود و در قالب یک کانتینر اجرا می‌شود.

sudo docker run hello-world

اگر نصب داکر به‌درستی انجام شده باشد، پس از اجرای این دستور پیامی مبنی بر موفقیت‌آمیز بودن اجرای کانتینر نمایش داده می‌شود. این پیام نشان می‌دهد که داکر توانسته است ایمیج موردنظر را دریافت کند، یک کانتینر ایجاد کند و آن را بدون مشکل اجرا کند. با انجام این بررسی‌ها می‌توانید مطمئن شوید که Docker Engine روی سیستم دبیان شما به‌درستی نصب و آماده استفاده است.

اجرای داکر بدون sudo روی Debian

هنگام کار با داکر در دبیان، احتمالا متوجه شده‌اید که برای اجرای هر دستور به دسترسی ریشه یا استفاده از پیشوند sudo نیاز دارید. این موضوع به این دلیل است که سوکت داکر به‌صورت پیش‌فرض در اختیار کاربر root قرار دارد. برای ساده‌تر شدن فرایند مدیریت کانتینرها و جلوگیری از تکرار مداوم sudo در ابتدای دستورات، می‌توانید تنظیمات سیستم را به‌گونه‌ای تغییر دهید که کاربر فعلی اجازه اجرای مستقیم دستورات داکر را داشته باشد.
اولین قدم برای این کار، اطمینان از وجود گروه کاربری داکر است. معمولا در فرایند نصب، این گروه به‌صورت خودکار ایجاد می‌شود، اما برای اطمینان بیشتر می‌توانید با دستور زیر آن را به‌صورت دستی ایجاد کنید.

sudo groupadd docker

پس از اطمینان از وجود گروه، باید کاربر موردنظر خود را به این گروه اضافه کنید. با انجام این کار، سیستم اجازه دسترسی به سوکت داکر را به آن کاربر می‌دهد. برای اضافه کردن کاربر فعلی به گروه داکر، دستور زیر را در ترمینال وارد کنید.

sudo usermod -aG docker $USER

نکته:

تغییرات مربوط به گروه‌های کاربری بلافاصله اعمال نمی‌شوند. برای اینکه این دسترسی فعال شود، باید یک‌بار از سیستم خارج و دوباره وارد شوید. البته اگر می‌خواهید تغییرات بدون خروج از سیستم و در همان لحظه اعمال شود، می‌توانید از دستور newgrp docker استفاده کنید.

در نهایت، برای بررسی اینکه آیا تنظیمات به‌درستی انجام شده است یا خیر، یک کانتینر آزمایشی را بدون استفاده از sudo اجرا کنید.

docker run hello-world

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

فعال‌سازی اجرای خودکار Docker بعد از بوت سیستم

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

برای فعال کردن اجرای خودکار Docker هنگام بوت شدن سیستم، دستور زیر را در ترمینال اجرا کنید.

sudo systemctl enable docker

با اجرای این دستور، سرویس داکر به لیست سرویس‌هایی اضافه می‌شود که در زمان بوت سیستم اجرا می‌شوند. در نتیجه، پس از هر بار ریبوت شدن سرور یا سیستم، Docker به‌طور خودکار فعال خواهد شد. اگر قصد دارید بلافاصله و بدون ریبوت، سرویس داکر را نیز اجرا کنید، می‌توانید از دستور زیر استفاده کنید.

sudo systemctl start docker

بهترین سرورها را از پارس‌پک تهیه کنید

انواع سرورهای مقیاس‌پذیر با امکانات ویژه برای همه پلن‌ها و قیمت مناسب را تنها در پارس‌پک بیابید. برای خرید یا مشاهده تعرفه‌ها و جزئیات بیشتر روی لینک زیر کلیک نمایید:

همچنین برای اطمینان از فعال بودن سرویس داکر و بررسی وضعیت آن، می‌توانید دستور زیر را اجرا کنید.

sudo systemctl status docker

در صورتی که در آینده بخواهید اجرای خودکار Docker در زمان بوت سیستم را غیرفعال کنید، کافی است دستور زیر را اجرا کنید.

sudo systemctl disable docker

با انجام این تنظیمات، سرویس Docker پس از هر بار راه‌اندازی سیستم به‌صورت خودکار در دسترس خواهد بود و نیازی به فعال‌سازی دستی آن نخواهید داشت.

دستورات اولیه داکر بعد از نصب روی دبیان

پس از نصب Docker روی دبیان و انجام تنظیمات اولیه، معمولا اولین کاری که انجام می‌شود، اطمینان از صحت نصب و آشنایی با چند دستور پایه است. این دستورات به شما کمک می‌کنند وضعیت سرویس داکر را بررسی کنید، یک کانتینر آزمایشی اجرا کنید و با مدیریت ساده کانتینرها و ایمیج‌ها آشنا شوید.

برای شروع، می‌توانید با اجرای دستور زیر نسخه داکر نصب‌شده روی سیستم را مشاهده کنید تا از موفقیت‌آمیز بودن نصب مطمئن شوید.

docker --version

در ادامه، برای بررسی سلامت کلی داکر و نمایش اطلاعات کامل‌تری از محیط و تنظیمات، دستور زیر را اجرا کنید. این دستور مجموعه‌ای از اطلاعات شامل نسخه سرویس، تنظیمات شبکه و وضعیت ران‌تایم را در اختیار شما قرار می‌دهد.

docker info

پس از اطمینان از فعال بودن سرویس، به‌طور معمول از یک کانتینر آزمایشی برای تست عملی استفاده می‌شود. داکر برای این منظور ایمیج سبک و آماده‌ای با نامhello-world ارائه کرده است که می‌توانید آن را با دستور زیر اجرا کنید.

docker run hello-world

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

docker ps

این دستور فقط کانتینرهای فعال را نشان می‌دهد. اگر قصد دارید لیست کامل کانتینرها، شامل موارد متوقف‌شده را نیز مشاهده کنید، می‌توانید گزینه -a را به آن اضافه کنید.

docker ps -a

علاوه بر کانتینرها، مدیریت ایمیج‌ها نیز بخش مهمی از کار با داکر است. برای مشاهده لیست ایمیج‌های موجود روی سیستم، می‌توانید از دستور زیر استفاده کنید.

docker images

با استفاده از همین چند دستور ساده، می‌توانید بعد از نصب داکر روی دبیان، هم از صحت عملکرد آن مطمئن شوید و هم قدم‌های اول در مدیریت کانتینرها و ایمیج‌ها را بردارید. در ادامه، با آشنایی بیشتر با مفاهیمی مانند Dockerfile، شبکه‌ها و ولوم‌ها می‌توانید از امکانات پیشرفته‌تر داکر نیز استفاده کنید.

مشکلات رایج هنگام نصب داکر در دبیان

مشکلات رایج هنگام نصب داکر در دبیان
مشکلات رایج در هنگام نصب Docker روی Debian

گاهی در فرایند نصب داکر روی دبیان ممکن است با خطاهایی مواجه شوید که مانع ادامه نصب یا اجرای صحیح سرویس می‌شوند. بیشتر این خطاها مربوط به پیکربندی مخازن، کلیدهای GPG یا تنظیمات دسترسی به سرویس هستند. در این بخش به رایج‌ترین مشکلات و روش رفع آن‌ها می‌پردازیم.

۱. خطا در دریافت بسته‌ها از مخزن Docker

اگر هنگام اجرای apt update یا نصب Docker با خطاهایی مانند 404 Not Found یا مشکل اتصال به download.docker.com مواجه شدید، معمولا مخزن به‌درستی اضافه نشده یا نسخه دبیان در آدرس اشتباه است. برای حل این مشکل ابتدا فایل مخزن را بررسی کنید:

cat /etc/apt/sources.list.d/docker.list

سپس کلید GPG را در صورت نیاز دوباره اضافه کرده و سیستم را به‌روزرسانی کنید:

sudo apt update

۲. خطای «docker: command not found»

اگر پس از نصب، دستور docker –version اجرا نشد، ممکن است نصب کامل انجام نشده باشد یا نشست کاربری نیاز به بارگذاری مجدد داشته باشد. ابتدا یک بار ترمینال را ببندید و دوباره باز کنید. در صورت ادامه مشکل، بسته‌ها را دوباره نصب کنید:

sudo apt install docker-ce docker-ce-cli containerd.io

۳. خطای permission denied

اگر هنگام اجرای دستورات داکر بدون sudo با خطای دسترسی مواجه شدید، کاربر شما عضو گروه docker نیست. برای رفع مشکل:

sudo usermod -aG docker $USER

سپس یک‌بار از سیستم خارج و دوباره وارد شوید یا دستور زیر را اجرا کنید:

newgrp docker

۴. اجرا نشدن سرویس Docker

اگر سرویس داکر اجرا نمی‌شود، وضعیت آن را بررسی کنید:

sudo systemctl status docker

در صورت نیاز، سرویس را فعال و اجرا کنید:

sudo systemctl enable docker
sudo systemctl start docker

در بیشتر موارد، با بررسی مخزن نصب، سطح دسترسی کاربر و وضعیت سرویس systemd می‌توان مشکلات نصب داکر در دبیان را به‌سادگی برطرف کرد.

جمع‌بندی

با نصب صحیح داکر روی دبیان می‌توانید فرایند توسعه، تست و استقرار برنامه‌ها را سریع‌تر و استانداردتر مدیریت کنید و وابستگی به تنظیمات پیچیده سرور را کاهش دهید. اگر قصد اجرای پروژه‌های کانتینری در محیطی پایدار و مقیاس‌پذیر را دارید، استفاده از سرورهای ابری و زیرساخت‌های پارس‌پک می‌تواند مدیریت منابع و استقرار سرویس‌ها را برای شما ساده‌تر کند.

سوالات متداول

آیا Docker روی همه نسخه‌های Debian قابل نصب است؟

داکر معمولا روی نسخه‌های پایدار دبیان مانند Debian 11 و Debian 12 بدون مشکل نصب می‌شود. برای جلوگیری از خطاهای احتمالی بهتر است از نسخه‌های پشتیبانی‌شده و به‌روز سیستم‌عامل استفاده کنید.

چطور مطمئن شویم Docker به‌درستی نصب شده است؟

برای بررسی صحت نصب داکر می‌توانید نسخه Docker را در سیستم بررسی کنید یا یک کانتینر آزمایشی اجرا کنید. اگر بدون خطا اجرا شود، یعنی نصب داکر به‌درستی انجام شده است.

چرا اجرای دستورات Docker بدون sudo با خطا مواجه می‌شود؟

به‌طور پیش‌فرض فقط کاربر روت اجازه اجرای دستورات داکر را دارد. اگر کاربر عادی بخواهد از داکر استفاده کند باید به گروه docker اضافه شود تا دسترسی لازم برای اجرای دستورات فراهم شود.

چطور Docker را به‌صورت خودکار بعد از روشن شدن سرور اجرا کنیم؟

با فعال‌سازی سرویس Docker در سیستم، این سرویس بعد از هر بار بوت سرور به‌صورت خودکار اجرا می‌شود و نیازی به راه‌اندازی دستی آن نخواهد بود.

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


ارسال دیدگاه در وبلاگ پارس‌پک را مطالعه کرده و آن‌ها را می‌پذیرم.