داکر ابزاری است که به منظور ایجاد سهولت در ایجاد ، استقرار و اجرای برنامه ها با استفاده از Containers (کانتاینرها نوعی مجازی سازی سیستم عامل هستند که یک کانتینر واحد ممکن است برای اجرای هر چیزی از یک میکروسرویس کوچک یا فرایند نرم افزاری گرفته تا یک برنامه بزرگتر مورد استفاده قرار گیرد) ساخته شده است.
کانتاینرها به یک برنامه نویس اجازه می دهند تا یک برنامه را با تمام قسمت های مورد نیاز مانند کتابخانه ها و سایر وابستگی ها بسته بندی کند و همه آن را به صورت یک بسته ارسال کند. با انجام این کار ، به لطف Containers، توسعه دهنده می تواند اطمینان داشته باشد که این برنامه بدون در نظر گرفتن هرگونه تنظیمات سفارشی که ممکن است دستگاه داشته باشد ، متفاوت از دستگاه مورد استفاده برای نوشتن و تست کد است.
به نوعی ، Docker کمی شبیه به یک ماشین مجازی است. اما برخلاف یک ماشین مجازی ، به جای ایجاد یک سیستم عامل کامل مجازی ، Docker به برنامه ها اجازه می دهد تا از همان هسته لینوکس به عنوان سیستمی که در آن کار می کنند استفاده کنند و فقط نیاز به برنامه هایی را با مواردی که از قبل روی رایانه میزبان اجرا نمی شوند ، استفاده کنند. این باعث افزایش قابل توجهی در عملکرد و کاهش اندازه برنامه می شود.
پس از معرفی ابزار Docker ، ما برخی از ویژگی های اصلی آن را بیان و مورد بررسی قرار میدهیم.
1.پیکربندی آسان و سریعتر: این ویژگی اصلی docker است که به ما کمک می کند تا سیستم را به راحتی و سریع تر پیکربندی کنیم. ما می توانیم کد خود را در زمان و تلاش کمتری مستقر کنیم. از آنجا که می توان از Docker در محیط های متنوعی استفاده کرد ، الزامات زیرساخت ها دیگر با محیط برنامه در ارتباط نیست.
2.افزایش بهره وری : با سهولت پیکربندی فنی و استقرار سریع برنامه. بدون شک این باعث افزایش بهره وری شده است. docker نه تنها به اجرای برنامه در محیط ایزوله کمک می کند بلکه باعث کاهش منابع نیز می شود.
3.جداسازی برنامه : Containers را فراهم می کند که برای اجرای برنامه ها در محیط جدا سازی استفاده می شوند. هر ظرف مستقل از دیگری است و به ما امکان می دهد هر نوع کاربرد را اجرا کنیم.
4.ازدحام (swarm): این یک ابزار خوشه بندی و برنامه ریزی برای Container داکر است. Swarm از API Docker به عنوان قسمت جلویی خود استفاده می کند که به ما کمک می کند تا از ابزارهای مختلفی برای کنترل آن استفاده کنیم. همچنین به ما کمک می کند تا یک خوشه میزبان داکر را به عنوان یک میزبان مجازی مجزا کنترل کنیم. این یک گروه از خود سازماندهی موتورها است که برای فعال کردن تصاویر با قابلیت بک گراند قابل استفاده است.
5.مسیریابی مش: این ویژگی درخواست های ورودی پورت های منتشر شده را روی گره های موجود به یک Container فعال هدایت می کند و اتصال را قادر می سازد حتی اگر هیچ کار دیگری روی گره اجرا نشود.
6.خدمات: خدمات لیستی از کارهایی است که به ما امکان می دهد وضعیت ظرف داخل یک خوشه را مشخص کنیم. هر کار نمونه ای از یک ظرف است که باید در حال اجرا باشد و Swarm آنها را در گره ها برنامه ریزی می کند.
7.مدیریت امنیت: این امکان را برای ما فراهم می کند که اسرار را در خود Swarm ذخیره کنیم و سپس به اسرار خاصی دسترسی پیدا کنیم.این شامل برخی از دستورات مهم به موتور مانند بازرسی مخفی ، ایجاد مخفی و غیره است.