داکر

از ویکی فارسی اوبونتو
نسخهٔ تاریخ ‏۱۹ شهریور ۱۴۰۳، ساعت ۱۵:۲۴ توسط EsmaeelE (بحث | مشارکت‌ها) (نصب روی ابونتو ۲۴.۰۴)
پرش به: ناوبری، جستجو

معرفی

داکر را می‌توان یک راه‌حل برای مدیریت بارگنج‌ها معرفی کرد. در واقع داکر از تعدادی سکو به مثابه خدمت (Platform as A Service) تشکیل شده که با مجازی‌سازی سطح سیستم‌عامل توانایی ارائه نرم‌افزارها را در قالب بسته‌هایی به عنوان بارگنج ایجاد می‌کند. محیط بارگنج ارائه شده از یک دیگر مجزا بوده و هر یک کتابخانه‌ها، تنظیمات و سایر بسته‌های مورد نیاز خود ر،ا شامل می‌شوند. این بارگنج‌ها قابلیت تعامل با یکدیگر و سیستم‌عامل میزبان را به واسطه کانال‌های متفاوتی دارند.

کاربردها

  • راه‌اندازی محیط توسعهٔ برنامهٔ مجزا و ایزوله
  • مجازی سازی در سطح سیستم‌عامل و پردازه


جایگزین‌ها

پادمن یک جایگزین برای داکر است.

نصب

داکر در مخازن رسمی اوبونتو موجود است. برای نصب کافی است از دستور apt استفاده نمایید و بسته docker.io را نصب نمایید.


$ sudo apt install docker.io

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


$ sudo usermod -aG docker ${USER}

برای اعمال تنظیمات لازم است مجدد با کاربر به سامانه وارد شوید.

فرمان زیر گروه‌هایی که کاربر عضو آن است را نشان می‌دهد. اکنون باید کاربر عضو گروه داکر شده باشد.


$  id -nG

برای اجرای چند تصویر داکر می‌توان از docker compose استفاده کرد.

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


$ sudo apt install docker-compose


نصب روی ابونتو ۲۴.۰۴

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


$ sudo apt install docker.io docker-compose-v2
$ sudo usermod -aG docker ${USER}


نصب افزونهٔ buildx

$ sudo apt install docker-buildx-plugin

بررسی کارکرد داکر

اگر تنظیمات به درستی انجام شده باشد اجرای فرمان زیر خطایی ندارد.

$ docker ps

اجرای یک تصویر آزمایشی(hello-world) برای اطمینان از اتصال به داکرهاب و دریافت و اجرای تصاویر از آن


$ docker run hello-world

بارگنج با چاپ یک پیام hello-world در خروجی استاندارد به اجرای خود خاتمه می‌دهد.

تنظیمات

تقریبا تمام تنظیمات ممکن برای داکر را می‌توان در شاخه زیر ذخیره و اعمال کرد:


/etc/docker/daemon.json

برای نمونه می‌توان تعداد پایین یا بالا گذاری همزمان لایه‌های یک تصویر را به شکل زیر تنظیم نمود:


{
	"max-concurrent-uploads": 1,
	"max-concurrent-downloads": 1
}


فرمان‌های اولیه

دریافت تصویر اوبونتو از داکرهاب:


$ docker pull ubuntu:20.04

حذف یک تصویر:


$ docker rmi image
$ docker image rm image

ساخت و اجرای یک بارگنج:


$ docker run nginx

سیاههٔ بارگنج‌های در حال اجرا:

$ docker ps 

سیاههٔ تمامی بارگنج‌ها:


$ docker ps --all
$ docker ps -a

متوقف کردن یک بارگنج:


$ docker stop container_name

حذف یک بارگنج:


$ docker rm container_name

حذف یک بارگنج در حال اجرا:


$ docker rm -f container_name

ساخت و اجرای بارگنجی به نام my_container و به صورت جدا شده از پایانه.


$ docker run -d --name my_container nginx

اتصال درگاه 8080 بارگنج به 80 میزبان:


$ docker run -d --name server -p 80:8080 nginx

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


$ docker run --name server -d -v /home/user/web/:/var/www/html php:7-apache

بررسی جزییات یک بارگنج یا تصویر:


$ docker inspect container/image