7 نکتهای که باید در مورد Docker بدانید
داکر چیست و چگونه کار میکند؟
این روزها همه در مورد Container های داکر صحبت میکنند، یک راهکار IT در زمان حاضر. داکر یکی از محبوبترین ابزارها برای ساخت کانتینر است. در ادامه مقاله 7 نکته بسیار مهم را در مورد داکر فرا خواهیم گرفت تا با چیستی و نحوه کار داکر بهتر آشنا شویم.
1- داکر ابزاری برای مدیریت کانتینر است
بیایید از پایه شروع کنیم: تعریف داکر. داکر یک ابزار منبع باز[1] برای استقرار و مدیریت کانتینرها است. همانطور که در بالا گفته شد داکر یکی از پرکاربردترین ابزارها است اگرچه تنها مورد نیست. داکر سیستمی است که برای ساخت و اجرای اپلیکیشنها یا خدمات بهصورت کانتینرهای جداگانه طراحیشده است. موتور داکر در بالای سیستمعامل میزبان قرار میگیرد و کانتینرهایش از هسته[2] ماشین میزبان و سختافزار آن به شکل اشتراکی استفاده میکنند و کانتینرها تقریباً با همان سرعت برنامههایی که مستقیماً روی ماشین قرار دارند اجرا میشوند. علاوهبراین داکر به شما امکان استقرار اپلیکیشنها را بهصورت خودکار در محیط کانتینر میدهد.
2- داکر یک سیستم مجازیسازی سختافزاری نیست
وقتی داکر منتشر شد، بسیاری آن را با hypervisor[3] ماشینهای مجازی مانند KVM، VMWare و Virtualbox مقایسه کردند. حتی اگر داکر قسمتهای مشترکی با hypervisor داشته باشد اما رویکرد متفاوتی با آن دارد. ماشینهای مجازی از سختافزار تقلید میکنند. انتزاعات موردنیاز برای انجام این عمل هم هزینه دارد. این بدان معناست که شما فقط میتوانید چند ماشین مجازی را با همان سختافزار قبلی اجرا کنید پیش از اینکه به مشکل برخورید. از طرف دیگر ازلحاظ تئوری داکر به شما امکان ایجاد صدها کانتینر را روی همان ماشین و بدون ایجاد مشکل و نگرانی میدهد.
3- داکر از سیستم فایل لایهای استفاده میکند
ابزارهایی مانند Docker مدل استقرار را بر اساس Image [4]ها ارائه میدهند که اشتراک اپلیکیشن یا سرویس را در محیطهای مختلف تسهیل میکند. هر فایل ایمیج لایهبندی شده است و هر زمان که فایل را ویرایش کنید یکلایه جدید ایجاد میشود. اگر با فتوشاپ آشنا باشید، احتمالاً از قبل با مفهوم لایهها آشنا هستید. داکر تقریباً با همان روش کار میکند. بهطور خلاصه ویرایشهای یکلایه بر لایههای زیرین تأثیر نمیگذارد. علاوهبراین شما میتوانید بهراحتی نسخههای ایمیجها را کنترل کرده و بهسرعت با ورژنهای قبلی جمع کنید.
4- داکر موجب صرفهجویی در وقت شما میشود
داکر امکان صرفهجویی زمان زیادی را هنگام نصب و راهاندازی برای شما فراهم میکند (که در بعضی موارد هم ازنظر زمان وهم ازنظر ابزار و منابع سیستمیِ مورداستفاده میتواند هزینه زیادی داشته باشد و البته ازنظر صرفه اقتصادی هم همینطور). به لطف اتوماسیون استقرار، میتوان این فرآیندها را از یک روز کامل به چند دقیقه کاهش داد.
5- داکر موجب پسانداز منابع مالی شما میشود
میدانید که زمان بیشتر یعنی هزینه بالاتر. داکر نهتنها در مورد کارمندان اختصاصی برای پروژه بلکه در هزینههای زیرساخت نیز میتواند کاهش قابلتوجهی ایجاد کند. باوجود کانتینرها، حافظه استفادهنشده و دیسک را میتوان بین اشیاء برنامه به اشتراک گذاشت. بنابراین میتوان سرویسهای مختلف را با همان سختافزار اجرا کرد (بدون نگرانی از هزینههای دوباره راه انداختن آنها)
6- داکر دارای مخزن و اکوسیستم بزرگی از ایمیجها است
دو سال پیش بیش از 14000 ایمیج عمومی داکر بهصورت آنلاین در دسترس بود. اکثر ایمیجهای داکر از طریق Docker Hub به اشتراک گذاشته میشوند که شما میتوانید با ایجاد حساب در Docker Hub به این ایمیجها هم دسترسی داشته باشید. Docker Hub یک بستر مرجع برای افرادی است که با ایمیجهای عمومی داکر کار میکنند.
7- داکر چند پلتفرمی است
داکر برای مدیریت کانتینرهای لینوکس ابداع و متولد شد. بااینحال اکنون میتوان آن را روی سیستمعاملهای مختلف با استفاده از راهکارهای خاصی راهاندازی کرد.
[1] Open Source
[2] Kernel
[3] نرمافزاری است که ماشینهای مجازی را ایجاد و اجرا میکند
[4] یک ایمیج داکر قالبی فقط خواندنی است که شامل مجموعهای از دستورالعملها برای ایجاد کانتینری است که روی پلتفرم داکر اجرا میشود