داکر یا docker چیست؟

داکر یا Docker چیست؟

داکر یک پلتفرمِ نرم افزاری هست که برای سریع تر کردن عملیات ساخت، اجرا، مدیریت، بروز رسانی و توزیع اپلیکیشن ها بر پایۀ کانتینر (Container) هست. این پلتفرم، نرم افزار های لازم برای اجرای یک اپلیکیشن رو در کانتینر ها ذخیره سازی میکنه که افراد دیگه هم از طریق سیستم عامل های لینوکس، ویندوز یا macOS بتونن استفاده بکنن.

برای داشتن اطلاعات بیشتر درباره داکر یا docker چیست؟ با ما تا آخر این مقاله همراه باشید.


داکر چطور کار می‌کند؟

Docker یک اپلیکیشن منیجر (application manager) است که هر چیزی که برای اجرای یک برنامه نیاز داره رو در یک کانتینر بسته بندی میکنه. کانتینر ها سیستم عامل یکسانی رو به اشتراک میگذارن. Docker Image ها شامل تمام تکه های لازم برای اجرای یک برنامه در کانتینر رو دارند که این موجب آسونتر شدن جابجایی بین محیط های مختلف میشه. جالب اینجاست که کانتینر های داکر، سیستم عامل یکسانی رو به اشتراک میگذارن و به همین دلیل، کانتینرها میتونن هم زمان در یک سیستم عامل با استفاده از هسته اون، اجرا بشن.

داکر ایمیج ها قالب های read-only هستن که داخلشون دستورالعمل یا کد هایی برای ساختن یک کانتینر هست.


Container یا کانتینر چیست؟

Container یک واحد استاندارد نرم افزاری هست که کد و تمام چیزهایی که به کد ربط داره رو بسته بندی میکنه تا برنامه بتونه با سرعت بیشتری لود و اجرا بشه. داکر کانتینر ایمیج (Docker Container Image) یک بسته نرم افزاری سبک، مستقل و قابل اجراست که در خودش هر چیزی که برای اجرای یک برنامه لازم هست رو داره مثل: کد، زمان اجرا، ابزار های سیستم، کتابخانه های سیستم و تنظیمات.


ویژگی های داکر

در این بخش از مقاله داکر یا Docker چیست؟ هم مزایا و هم معایب استفاده از داکر رو بهتون میگم، هر چند استفاده از داکر مزایای زیادی داره، ولی یک عیب هم داره که در ادامه توضیح میدم.



مزایای استفاده از داکر

  • داکر به شما این امکان رو میده که چندین برنامه رو با نیاز ها و وابستگی های مختلف روی یک میزبان یا هاست، همزمان اجرا کنید.
  • چون کانتینر ها کوچیک هستن، فضای زیادی رو در دیسک اشغال نمیکنن و حتی فضای ذخیره سازی رو بهینه میکنن که به شما این اجازه رو میده که برنامه های زیادی رو روی یک سرور اجرا بکنید.
  • کانتینر ها سیستم عامل ندارند و این باعث میشه که از حافظه کمتری استفاده بکنن و خیلی سریع بوت بشن.
  • داکر برای کار کردن، به سخت افزار کمتری نیاز داره که باعث صرفه جویی در هزینه ها و منابع میشه.

معایب داکر

داکر در کنار مزایاش، فقط یک مشکل داره: وقتی که از داکر استفاده میکنید، نمیتونید برنامه هایی که به سیستم عامل های متفاوتی نیاز دارن رو در یک docker host میزبانی کنید. مثلا فرض کنیم که شما 4 تا برنامه دارید که 2 تاشون به سیستم عامل لینوکس نیاز دارن و 2 تاش به سیستم عامل ویندوز. شما نمیتونید همه اونها رو در یک داکر هاست قرار بدید و باید هر سیستم عامل متفاوت رو در docker host های مختلفی بذارید، یعنی باید 2 تا از برنامه هایی که به لینوکس نیاز دارند رو در یک داکر هاست مخصوص سیستم عامل های لینوکس بگذارید و 2 تای دیگه رو به docker host مخصوص خودشون بگذارید.


کانتینر ها چطوری کار میکنند؟

کانتینر مثل بسته ای برای کد شما و وابستگی های اون ها هست که میتونه به چندین کانتینر دیگه اجازه بده که بتونن روی یک دستگاه اجرا بشن و هسته سیستم عامل رو مشترکاً استفاده بکنن. هر Container فرآیند خواص خودش رو داره که بر اساس اونها عمل میکنه و مدیریت و استقرار سیستم های پیچیده رو راحت تر میکنه، علاوه بر اون، استفاده از منابع و جداسازی بین برنامه ها رو بهبود میبخشه.


آیا به داکر نیاز دارم؟

اگه شما یک سایتی دارید ویا میخواید سایتی برای خودتون بسازید، بهتره که از docker استفاده بکنید چون عملکرد اون در وب سایت ها خیلی زیاده و اگه شما میخواید روی اپلیکیشنتون استفاده بکنید، پیشنهادم اینه که از داکر استفاده نکنید چون عملکرد بسیار ضعیفی در این قسمت داره.


آیا داکر همان ماشین مجازی است؟

داکر یا docker چیست؟

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

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


آیا داکر رایگان است؟

team، pro، personal و business پلن های داکر هستن که فقط پلن شخصی یا personal رایگان هست.


جمع بندی

در مقاله داکر یا Docker چیست؟ بهتون گفتیم که داکر چی هست و چی کار میکنه و کانتینر و نحوه کارکردش رو بهتون توضیح دادیم و برخی از سوالات متداول در باره این موضوع رو براتون پاسخ دادم. امیدوارم که این مقاله برای شما مفید بوده باشه.



– سپاس از وقت با ارزش شما


منابع: faradars7learnmaralhostibmduplocloudTeckTargetDocker

دیدگاه های این مقاله

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *