داکر
محتویات
معرفی
داکر را میتوان یک راهحل برای مدیریت بارگنجها معرفی کرد. در واقع داکر از تعدادی سکو به مثابه خدمت (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}
با اعمال این تغییر باید به جای docker-compose از فرمان docker compose استفاده کنید.
نصب افزونهٔ 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