توجه: لطفاً نظر خود را از طریق ثبت کامنت و یا  /- برای این مطلب ثبت نمایید.

داکر چیست؟ عملکرد Docker به چه صورت است؟

نویسنده: حسن حیدری
1401/12/23   17:54
داکر یک ابزار اپن سورس با بازدهی بسیار بالا برای طراحی و ساخت برنامه‌ها به کمک کانتینر است.Container به یک برنامه نویس کمک می‌کند تا پروژه خود را با تمام بخش‌های آن به صورت یک بسته درآورد.
داکر چیست؟ عملکرد Docker به چه صورت است؟

داکر چیست؟ عملکرد Docker به چه صورت است؟

داکر چیست و چه کاربردی دارد؟

داکر (Docker) یک پلتفرم متن باز است که بر مبنای سیستم عامل لینوکس راه اندازی شده است. در پاسخ به سوال داکر چیست، خیلی ساده می توان گفت، ابزاری است که می تواند فرایند ایجاد، پیاده سازی و اجرای برنامه ها را با استفاده از Container ها بسیار ساده کند.

نوعی ماشین مجازی است و این امکان را برای برنامه ها فراهم می کند تا از یک Kernel واحد لینوکس استفاده کرده و از امکاناتی بهره مند شوند که در سیستم عامل میزبان ارائه نشده است. به این ترتیب می توانند به صورت مستقل از پیش نیازها و امکانات مازاد بهره برداری کنند. این موضوع باعث می شود سرعت و عملکرد برنامه بهبود قابل ملاحظه ای پیدا کند و حجم آن نیز کاهش یابد.

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

نگهداری برنامه ها در محیطی ایزوله و به صورت مستقل، از اهداف سیستم های جدید توسعه نرم افزار است. به این ترتیب فعالیت آن ها بر روی یکدیگر تاثیری نداشته و کاملا مستقل از هم کار می کنند. یکی از راه های پیاده کردن این تکنولوژی استفاده از ماشین مجازی (Virtual Machine) است که برنامه ها را روی یک سخت افزار اما جدا از هم نگهداری می کند. در این حالت component ها با هم تداخل نداشته و رقابت برای استفاده از منابع سخت افزاری به حداقل می رسد.

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

می توان کانتینرها را به 3 بخش تقسیم کرد که عبارتند از:

سازنده (Builder):

فناوری مورد استفاده برای ساخت کانتینر

موتور (Engine):

فناوری مورد استفاده برای راه اندازی کانتینر

تنظیم (Orchestration):

فناوری مورد استفاده برای تنظیمات و مدیریت کانتینر

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

هر چند مفهوم container از مدت ها قبل در حوزه IT مطرح بوده، اما معرفی و ارائه داکر به عنوان یک پروژه متن باز باعث شد استفاده از container ها دوباره فراگیر شود.

کانتینر (Container) این امکان را برای توسعه دهندگان فراهم می کند تا بسته کاملی از برنامه های خود همراه تمامی بخش های مورد نیاز آن ایجاد کرده و آن را در قالب یک بسته واحد ارسال کنند.

Dockerfile

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

Docker image

زمانی که کار نوشتن داکر فایل تمام شد، یک قابلیت به اسم Docker Build را فراخوانی می کنید که وظیفه دارد یک Image بر اساس محتویات Dockerfile شما بسازد. Docker Image یک فایل قابل حمل و شامل یک سری دستورالعمل است که مشخص می کند Container کدام کامپوننت های نرم افزاری را اجرا کند و اینکه چطور آن را اجرا کند.

Docker run

ویژگی Docker run در واقع نوعی دستور است که کانتینر را راه اندازی می کند. هر Container یک نمونه یا مثال از Image است و ماهیت کانتینر به صورت موقتی است. با این حال می توان آن ها را متوقف کرد یا مجددا راه اندازی نمود. هر Image به شرط وجود نام منحصر به فرد، می تواند تعداد زیادی کانتینر داشته باشد.

تا اینجا دانستیم داکر چیست و کانتینرها به چه شکل عمل می کنند، در این بخش قصد داریم مکانیزم عملکرد داکر را بررسی کنیم.

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

و در انتها…

همان طور که بیان کردیم، داکر یک ابزار اپن سورس با بازدهی بسیار بالا برای طراحی و ساخت برنامه ها به کمک کانتینر است. Container به یک برنامه نویس کمک می کند تا پروژه خود را با تمام بخش های آن به صورت یک بسته درآورد. او با وجود این تکنیک، می تواند مطمئن باشد که پروژه اش در سیستم های دیگر بدون نیاز به ابزارها یا تنظیمات خاص، اجرا می شود.

داکر چیست؟ عملکرد Docker به چه صورت است؟
امتیاز دهی به مقالهScoring the article
 
ثبت نظر یا سوالRegister comments or questions
نام و نام خانوادگیfirst name and last name
ارسال
نظراتComments   (0)
ترتیب
701770
fa