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

Docker بخش جدایی‌ناپذیر از توسعه نرم افزار مدرن است و به عنوان pipline یکپارچه‌سازی و استقرار مداوم DevOps استفاده می‌شود.

این آموزش، نحوه نصب Docker را در دستگاه اوبونتو 20.04 شرح می‌دهد.

 

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

 

نصب Docker در اوبونتو 20.04

نصب Docker در اوبونتو نسبتاً ساده است. بدین صورت که مخزن Docker را فعال کرده، کلید GPG مخزن را وارد می‌نماییم و سپس بسته را نصب می‌کنیم.

ابتدا، فهرست بسته‌ها را به روز کرده و وابستگی‌های لازم برای افزودن یک مخزن HTTPS جدید را نصب نمایید:

sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

کلید GPG مخزن را با استفاده از دستور curl زیر وارد کنید:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

مخزن Docker APT را به سیستم خود اضافه نمایید:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

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

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

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

 

برای نصب یک نسخه خاص، ابتدا تمام نسخه‌های موجود در مخزن Docker را با دستور زیر فهرست کنید:

sudo apt update
apt list -a docker-ce

دقت کنید که نسخه‌های Docker موجود در ستون دوم چاپ شده‌اند.

output
docker-ce/focal 5:19.03.9~3-0~ubuntu-focal amd64

یک نسخه خاص را با اضافه کردن =<VERSION> بعد از نام بسته نصب نمایید:

sudo apt install docker-ce=<VERSION> docker-ce-cli=<VERSION> containerd.io

پس از اتمام نصب، سرویس Docker به طور خودکار شروع می‌شود. شما می‌توانید آن را با تایپ کردن تأیید کنید:

sudo systemctl status docker

خروجی چیزی شبیه به این خواهد بود:

● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2020-05-21 14:47:34 UTC; 42s ago
...

هنگامی‌که نسخه جدیدی از Docker منتشر می‌شود، شما می‌توانید بسته‌ها را با استفاده از روش استاندارد sudo apt update && sudo apt upgrade به‌روز نمایید.

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

sudo apt-mark hold docker-ce

 

این مطلب نیز ممکن است برای شما مفید باشد: نحوه نامگذاری یا تغییر نام Docker Containers

 

اجرای دستورات Docker به عنوان یک کاربر غیر root

به‌طور پیش‌فرض، تنها root و کاربر با امتیازات sudo می‌توانند دستورات Docker را اجرا کنند.

برای اجرای دستورات Docker به عنوان کاربر غیر root، باید کاربر خود را به گروه docker (که در هنگام نصب بسته Docker CE ایجاد شده است) اضافه نمایید. برای انجام این کار، دستور زیر را اجرا کنید:

sudo usermod -aG docker $USER

$USER، یک متغیر محیطی است که نام کاربری شما را نگه می‌دارد.

از سیستم خارج شده و دوباره وارد شوید تا عضویت گروه تازه شود.

 

تایید نصب

برای تأیید اینکه Docker با موفقیت نصب شده است و شما می‌توانید دستور docker را بدون استفاده از sudo اجرا نمایید، یک کانتینر آزمایشی به صورت زیر اجرا می‌کنیم:

docker container run hello-world

این دستور، image آزمایشی را دانلود می‌کند (اگر به صورت محلی یافت نشد، آن را در یک container اجرا می‌کند)، یک پیام “Hello from Docker” چاپ کرده و خارج می‌شود. خروجی باید به شکل زیر باشد:

 

در آخر، container پس از چاپ پیام متوقف می‌شود؛ زیرا فرآیند طولانی مدتی ندارد.

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

 

این مطلب نیز ممکن است برای شما مفید باشد: حذف تمام containerها در Docker

 

حذف نصب Docker

قبل از حذف Docker، پیشنهاد می‌شود که همه containerها، imageها، volumeها و networkها را حذف نمایید.

دستورات زیر را به‌منظور توقف تمام کانتینرهای در حال اجرا و حذف همه اشیاء docker اجرا کنید:

docker container stop $(docker container ls -aq)
docker system prune -a --volumes

اکنون می‌توانید Docker را مانند سایر بسته‌های نصب شده با apt به‌صورت زیر حذف نمایید:

sudo apt purge docker-ce
sudo apt autoremove

 

 

 

منبع:

linuxize