معماری داکر

  • مدرس: علی بیگدلی
  • تاریخ انتشار: 1402/05/27
  • تعداد بازدید: 183

معماری داکر چیست؟
معماری به طرح یا عنصر برخی از ساختمان ها، نرم افزارها یا پلتفرم ها گفته می شود. معماری داکر از اجزای مختلفی برای ساخت، ارسال و استقرار برنامه‌ها و برنامه‌ها تشکیل شده است.

موارد زیر اجزای اصلی Docker هستند:

  • Docker Daemon
  • Docker Client
  • Docker Image
  • Docker Container
  • Docker Registry
  • Docker Network

Docker Daemon

docker daemon در حقیقت هسته اصلی عملکرد معماری داکر است. در حالت عادی دستورات را از کاربر دریافت و مطابق با عملکرد درخواستی عملیات ها را انجام میدهد، مانند ساخت یا مدیریت کانتینر هاو در حقیقت مسئولیت ساخت، مدیریت و اجرا کانتینر ها را به عهده دارد. docker daemon بر روی سیستم میزبان کار می کند و دستورات را از طریق Rest Api دریافت می کند.

Docker Client

docker client دستورات را به docker daemon ارسال می کند و مسئول ارتباط با آن است و بر حسب دستورات ورودی کاربر پاسخ های متناسب را از daemon منتقل به نمایش می دهد. بر روی سیستم میزبان کار می کند هر چند این امکان وجود دارد که با دسترسی های تحت شبکه از راه دور نیز قابل انجام باشد.

Docker Image

docker images در حقیقت یک بخش اصلی دیگر از عملکرد مغماری داکر است که عملکرد های ساخت و اجرای کانتینر ها کنترل می کند. این image ها درحقیقت قطعه کد ها و همچنین نیاز مندی های ساخت پروژه و تمام تنظیمات لازم برای اجرا آن را در خود جای داده اند. این image ها می توانند توسط دستوراتی که برای ساخت Dockerfile وارد می کنید ساخته شوند.

Docker Container

پایه ترین اساس داکر بر روی کانتینر ها تکیه دارد که از روی image ها ساخته می شود.داکر یک پلتفرم مبتنی بر کانتینر است و برای جمع آوری برنامه ها و تمام نیاز مندی های اجرای آن ها به صورت متمرکز و واحد پایه ریزی شده است. به همین خاطر کانتینر ها را یک پکیج با قابلیت اجرا تلقی می شود.

Docker Registery

یک registry در داکر یک نقطه موثر دیگر در معماری داکر است. رجیستری ها به دو دسته تقسیم می شوند: local و Remote. این رجیستری ها برای نگهداری image ها تعبیه شده اند. به صورت رسمی تر Docker Hub یک رجیستری  عمومی برای نگهداری image ها به شمار می آید. هر چند که کاربران می توانند از registery های شخصی نیز استفاده کنند.

Dcoker Network

شبکه رد داکر در حقیقت یک عملکرد برای اتصال کانتینر ها به یکدیگر و همچنین به بیرون از این ساختار توسط daemon است. داکر به کابران اجازه می دهد تا بتوانند هر میزان تغییراتی که برای پروژه نیاز است را در کانتینر اعمال نمایند تا جایی که تداخلی ایجاد نکند.

 

جمع بندی

داکر یک پلتفرم  client-server است که مبتنی بر زبان Go نوشته شده است و بر اساس تمام معماری بالا توانایی ایجاد ارتباط ساخت و اجرای سرویس های شما مبتنی بر یک image ها را در یک container بر عهده دارد.