داکر (Docker) پلتفرمی Open Source است که بر پایهی سیستم عامل لینوکس طراحی شده است و به کاربران این امکان را میدهد تا فرایند ایجاد، پیادهسازی و اجرای برنامهها را در قالب کانتینرها داشته باشند. کانتینرها ایزوله هستند، شبیه به ماشینهای مجازی، اما قابل حمل تر و سازگار با منابع هستند. ایزوله بودن این کانتینرها امکان اجرای همزمان بسیاری از کانتینرها را روی یک میزبان واحد فراهم میکند.
داکر از معماری کلاینت-سرور استفاده میکند و برای مدیریت کانتینرها به دیمون داکر متکی است. در این آموزش نصب و استفاده از داکر در اوبونتو 20.04 را یاد خواهید گرفت.
نصب داکر در اوبونتو
سیستم عامل Ubuntu پلتفرم شماره یک برای مدیریت کانتینرهای Docker یا Kubernetes است. این به این دلیل است که اوبونتو کانتینرها را در مقیاس اجرا میکند، سریع، ایمن و منبع باز است و میلیونها ماشین در سراسر جهان در حال استفاده از این سیستم عامل میباشند. به منظور نصب و فعالسازی داکر بر روی ubuntu دو روش نصب وجود دارد:
- از منبع رسمی Docker : اطمینان از آخرین نسخه Docker.
- از منابع پیشفرض Ubuntu : نصب سادهتری ارائه میکند.
در این مقاله روش نصب دوم یعنی از طریق Repository خود سیستم عامل ubuntu نصب را انجام خواهیم داد.در این نوع نصب اگرچه فرآیند نصب سادهتر است، بسته Docker ممکن است قدیمی باشد.
مرحله 1: به روز رسانی
از طریق دستور زیر اطمینان حاصل کنید که پکیجهای سیستم عامل به روز میباشد:
sudo apt update && sudo apt
upgrade
مرحله 2: Docker را نصب کنید
برای نصب Docker دستور زیر را اجرا کنید:
sudo apt install docker.io -y
مرحله 3: نصب پکیج های وابسته
با اجرای دستور زیر تمام بستههای وابسته به Docker را نصب کنید:
sudo snap install docker
لازم به ذکر است که به منظور استفاده از این دستور پکیج منیجر snap باید بر روی سیستم عامل شما نصب باشد. در صورتی که نصب نمیباشد از طریق دستور زیر میتوانید این پکیج منیجر را نصب و فعال نمایید:
sudo apt install snapd
مرحله 4: نصب را بررسی کنید
با اجرای دستور وضعیت یا بررسی نسخه برنامه بررسی کنید که آیا Docker به درستی نصب شده است یا خیر:
sudo systemctl status docker
همچنین، نسخه برنامه را با اجرای زیر بررسی کنید:
docker --version
تا اینجای کار نصب را با موفقیت انجام دادید در ادامه با نحوهی کار با این پلتفرم آشنا خواهیم شد.
نحوه استفاده از Docker در اوبونتو
تمام اطلاعات Docker، از جمله نحو، گزینهها و دستورات، با اجرای دستور docker در ترمینال به شکل زیر نمایش داده میشود:
استفاده از Docker را میتوانید با دانلود ایمیجهای Docker، ایجاد کانتینرها و مدیریت Docker Volumes شروع کنید.
کار با Docker Images
ایمیجهای داکر پایهای برای ساخت کانتینرهای داکر هستند. ایمیجها در Docker Hub که یک منبع Docker است قرار دارند. این منبع به همه کاربران اجازه میدهد تا ایمیج خود را در هاب داکر میزبانی کنند و در نتیجه ایمیج های زیادی از جمله برنامهها و توزیعهای لینوکس در این ریپازیتوری قابل انتخاب است. بخشهای زیر روشهای مختلف کار با ایمیجهای داکر را نشان میدهد.
- جستجوی یک ایمیج داکر
با استفاده از دستور جستجوی داکر، ایمیجهای موجود را در Docker Hub جستجو کنید.
sudo docker search [keyword]
برای [keyword]، کلمه کلیدی را که میخواهید جستجو کنید مشخص کنید. به عنوان مثال، برای نمایش تمام ایمیجهای اوبونتو، اجرا کنید:
sudo docker search ubuntu
خروجی لیستی از تمام ایمیجهای حاوی کلمه کلیدی اوبونتو است. اگر ستون OFFICIAL حاوی پارامتر [OK] باشد، ایمیج توسط شرکت رسمی توسعه دهنده پروژه آپلود شده است.
- دریافت یک ایمیج در داکر
پس از اینکه تصمیم گرفتید کدام ایمیج را میخواهید، با استفاده از گزینه pull آن را دانلود کنید. به شکل زیر:
sudo docker pull [image-name]
برای مثال، ایمیج رسمی اوبونتو را با اجرای دستور زیر میتوانید دانلود کنید:
sudo docker pull ubuntu
پس از دانلود ایمیج با آن میتوانید اقدام به ساخت یک container نمایید.
برای مشاهدهی ایمیج های دانلود شده هم میتوانید از دستور زیر استفاده نمایید:
sudo docker images
کار با Docker Containers
کانتینر داکر یک محیط مجازی مجزا است که از ایمیج داکر ایجاد شده است. از ایمیجی که قبلا دانلود کردهاید استفاده کنید یا نام آن را در دستور docker run برای دانلود خودکار ایمیج و ایجاد یک کانتینر مشخص کنید. به عنوان مثال، از ایمیج hello-world برای دانلود یک ایمیج آزمایشی و ایجاد یک کانتینر استفاده کنید. به این منظور دستور زیر را اجرا کنید:
sudo docker run hello-world
این دستور به داکر دستور میدهد تا ایمیج را از Docker Hub بارگیری کند و یک کانتینر ایجاد کند. پس از ایجاد، پیام “Hello from Docker” به همراه توضیح نحوه عملکرد کانتینر ظاهر میشود و سپس داکر آن را خاموش میکند.
مشاهده کانتینرهای Docker
کانتینر فعال داکر کانتینری است که در حال حاضر در حال اجرا است. فهرست کردن کانتینرها مفید است زیرا شناسه و نام منحصربهفرد مورد نیاز هنگام راهاندازی، توقف یا برداشتن کانتینر را خروجی میدهد. برای مشاهده فقط کانتینرهای فعال داکر، میتوانید دستور زیر را اجرا نمایید:
sudo docker ps
برای فهرست کردن همه کانتینرها، از جمله موارد غیرفعال، صفت -a را به دستور بالا اضافه کنید:
sudo docker ps -a
این دستور همه کانتینرهای موجود و جزئیات آنها، از جمله شناسه کانتینر، تصویر، فرمان، زمان ایجاد، وضعیت، پورت ها و نام منحصر به فرد را خروجی میدهد.
نتورک کانتینرها در Docker
دستورات شبکه داکر به کاربران این امکان را میدهد که شبکههای خود را در یک کانتینر ایجاد و مدیریت کنند. جدول زیر دستورات فرعی اساسی مورد استفاده برای مدیریت شبکه داکر را نشان میدهد:
ضمن تشکر از همراهی شما کاربران گرامی در مقالات آتی با سایر ویژگیهای پلتفرم Docker آشنا خواهیم شد.