اجزای داکر

موتور داکر – Docker Engine یک تکنولوژی بر روی بستر Client-Server می‌باشد که کانتینرها را بر اساس اجزا و سرویس‌های داکر ایجاد و اجرا می‌نماید.

اجزای داکر – Docker Components

1. داکر سرویس‌دهنده – Docker Daemon

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

2. داکر مشتری – Docker Client

رابط بین داکر سرویس‌دهنده با کاربران استفاده کننده از داکر می‌باشد. به صورت خلاصه دستورات کاربران را به سرویس‌دهنده‌ی داکر از طریق API منتقل می‌کند و سرویس‌دهنده نیز آنها را انجام می‌دهد. داکر مشتری می‌تواند با یک یا چند تا سرویس‌دهنده‌ی داکر ارتباط داشته باشد.

3. مخزن داکر – Docker Registry

مخزن داکر محلی برای نگهداری ایمیج‌های داکر است. مخازن داکر بصورت عمومی (Public Registry) و خصوصی (Private Registry) می‌باشد.
استفاده از مخازن عمومی و دریافت ایمیج و قرار دادن (Commit) در آن‌ها رایگان می‌باشد. در حال حاضر بزرگترین مخزن عمومی داکر، Docker Hub می‌باشد.

4. ایمیج – Image

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

5. کانتینر – Container

کانتینر داکر که بوسیله Docker Image (تصویر داکر) ساخته می‌شود یک نرم‌افزار کاملاً ایزوله با فضای بیرونی خود می‌باشد.

6. سرویس – Service

برای مقیاس‌پذیری (Scale) کانتینرها نیاز است تا از چندین داکر سرویس‌دهنده استفاده کرد. سرویس Swarm می‌تواند با چندین داکر سرویس‌دهنده ارتباط برقرار کند و از آن‌ها به عنوان‌های مختلف اعم از کارگر (Worker) و مدیر (Manager) سرویس استفاده کند. سرویس Swarm با استفاده از API با سرویس‌دهنده‌ی داکر ارتباط برقرار می‌کند. این امکان از نسخه‌ی ۱٫۱۲ و بالاتر در خود داکر موجود می‌باشد.