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

داکر (Docker) چیست؟ : تقریبا ۵ سال پیش فردی با نام سالامان هایکز (Solomon Hykes)، سازوکاری با نام داکر را راهاندازی کرد. هدف از این کار تعامل راحتتر با کانتینرها (Containers) بود.داکر یک پلتفرم نرم افزاری برای ساخت اپلیکیشنهای مبتنی بر Container است. محیطهای اجرایی کوچک و سبک که به طور مشترک از هسته سیستم عامل استفاده میکنند، اما در عین حال در یک محیط ایزوله و کاملا جدا از هم قرار دارند. هر چند مفهوم container یا نگهدارنده از مدتها قبل در حوزه IT مطرح بود اما داکر به عنوان یک پروژه متن باز در سال ۲۰۱۳ معرفی و عرضه شد. در واقع داکر باعث شد container جان تازه ای بگیرد و دوباره محبوب شود. توسعه نرم افزار به سمت استفاده از Container و میکرو سرویسها رفت و بعدها به عنوان توسعه ابری یا Cloud-native Development شناخته شد.
از بعضی جهات ، Docker کمی شبیه دستگاه مجازی به نظر می رسد. برخلاف یک ماشین مجازی ، به جای ایجاد یک سیستم عامل مجازی کامل ، برنامه های Docker به شما امکان می دهند از همان هسته لینوکس به عنوان سیستمی که در آن کار می کنید استفاده کنید و فقط به برنامه هایی نیاز دارید تا چیزی را که دیگر روی رایانه میزبان کار نمی کند ، استفاده کنید. این عملکرد قابل توجهی می بخشد و اندازه برنامه را کاهش می دهد.
و از همه مهمتر ، docker منبع باز یا همان open source است. این بدان معناست که هر کس می تواند در صورت نیاز به ویژگی های اضافی که در جعبه در دسترس نیست ، به Docker کمک کرده و آن را گسترش دهد تا نیازهای خود را برآورده کند.
داکر برای چه کسی است؟
Docker ابزاری است که به نفع توسعه دهندگان و سرپرستان سیستم طراحی شده است و این بخشی از بسیاری از ابزارهای DevOps (عملیات توسعه دهندگان) است. برای توسعه دهندگان ، این بدان معنی است که آنها می توانند بدون نگرانی در مورد سیستمی که در نهایت در حال اجراست ، روی نوشتن کد متمرکز شوند. همچنین این امکان را به آنها می دهد تا با استفاده از یکی از هزاران برنامه که قبلاً برای اجرای در یک داکر container به عنوان بخشی از برنامه های خود طراحی شده اند ، شروع به کار کنند.
داکر و امنیت
داکر امنیت برنامه هایی را که در برنامه ها اجرا می شوند ، به ارمغان می آورد ، اما container ها خود جایگزینی برای اقدامات امنیتی مناسب نیستند.
دن والش ، رهبر امنیت رایانه که بیشتر به کار در SELinux مشهور است ، در مورد اهمیت ایمن ساختن container docker نظر می دهد. همچنین جزئیات مفصلی از ویژگی های امنیتی در حال حاضر در داکر و عملکرد آنها ارائه شده است.
مفهوم کانتینرها
کانتینرها را می توان به سه قسمت تقسیم کرد:
- Builder: فناوری استفاده شده در ایجاد کانتینرها
- Engine: فناوری مورد استفاده برای اجرای کانتینرها
- Orchestration: ناوری مورد استفاده برای مدیریت بسیاری از کانتینرها
در واقع هر یک از کانتینر ها یک محیط کاملا ایزوله نسبت به سیستم عامل میزبان و سایر کانتینر ها دارد ، و از این لحاظ امنیت خوبی را در ابتدا مهیا میکند. تنظیمات و مباحث تخصصی دیگری نیز در ارتباط با امنیت در داکر و کانتینر ها وجود دارد که به این مقاله مراجعه نمائید.
داکر و کانتینر ها یک تجربه راحت و ایمن از نگهداری و استقرار برنامه ها به شما میدهد. اگر شما از آن دسته کاربران هستید که با دنیای داکر و کانتینرها اشنا هستید و تمایل دارید که برنامه هاتون رو به این دنیا بیارید می توانید با کارشناس مجرب زود وب برای استقرار برنامه خود در تماس باشید.