برخی مواقع به مکانی ایزوله نیاز است تا برنامه های کاربردی بدون ایجاد خلل در دیگر بخش های سیستم و اثر گذاری بر آنها اجرا شوند، این مکان های ایزوله Container ها هستند.بر روی یک ماشین که این Container ها اجرا شوند می توانند هسته سیستم عامل یکسان را به اشتراک بگذارند و به سرعت آغاز به کار کنند همچنین از منابع کمتری نیز استفاده می کنند. Docker متعهد گشته که در تکنولوژیContainer های برنامه های کاربردی ارائه شده ، فرآیند انجام امور IT را متغیر خواهد کرد درست به مانند اتفاقی که مجازی سازی رقم زد. حال ما در این مقاله برآن شدیم تا به بررسی Container های Docker و چگونگی پشتیبانی آنها در Windows Server بپردازیم.
معرفی تکنولوژی Docker و حضور آن در Microsoft Azure
Docker یک تکنولوژی مطلوب مدیریت Containerها است که به شما این امکان را می دهد به سرعت با container ها بر روی سیستم عامل لینوکس و به همان طریق بر روی ویندوز فعالیت داشته باشید. همچنین با بهره گیری از Azure نیز شما این انعطاف پذیری را خواهید داشت تا بر اساس مطالبات خود Docker را در روش های گوناگونی راه اندازی کنید.
در واقع Docker به عنوان لایه ای واسط مابین سیستم عامل اصلی و برنامه های کاربردی قرار می گیرد و برنامه های کاربردی نیز با بهره برداری از این واسط از یکدیگر جدا شده و به اصطلاح ایزوله می شوند. در سیستم عامل لینوکس امکاناتی برای ایزوله سازی منابع وجود دارد که هم هسته سیستم عامل و هم منابع سخت افزاری و نرم افزاری سیستم عامل را بصورت ایزوله به نرم افزارها ارائه می کند و Docker نیز از آنها استفاده خواهد کرد.
Container های Docker بر پایه استاندارد های باز می باشند و container ها را قادر می سازند بر روی تمامی توزیع های لینوکس و ویندوز بر بالای هر نوع زیر ساختی اجرا شوند. برخی از کاربران ترکیبی از ویندوز سرور و محیط کاری لینوکس را با هم اجرا می کنند. Microsoft Azure نیز به مشتریانش بهترین انتخاب ممکن هر سرویس دهنده کلود ( ابری ) را ارئه داده است. با پشتیبانی از Docker Container در ورژن های جدید ویندوز سرور، استفاده از Docker بر روی ویندوز سرور و لینوکس قابل پشتیبانی می باشد. برنامه های کاربردی به راحتی می توانند با هم ترکیب شوند و می توانند با هم بهترین تکنولوژی ها را از سیستم لینوکس و سیستم ویندوز گردهم بیاورند. Container ویندوز سرور در دیتاسنتر شما، دیتاسنتر میزبان شما و یا هر ارائه دهنده سرویس ابری و البته Microsoft Azure قابلیت اجرا را دارد.
Windows Server Container
Windows container یک منطقه عملیاتی با منابع تحت کنترل است، که قابلیت حمل و ایزوله برای برنامه های کاربردی فراهم می آورد. این فرآیند ، ایزوله سازی برنامه های کاربردی را قادر می سازد تا بدون خطر از دست دادن وابستگی ها و پیکربندی های محیطی که بر برنامه های کاربردی اثر می گذارد، فعال گردند. با به اشتراک گذاری کرنل یکسان و همچنین دیگر مؤلفه های کلیدی سیستمی،Container ها سرعت راه اندازی ابتدایی بالاتر و کاهش کلی مصرف منابع را به نمایش گذاشته اند. سرعت راه اندازی ابتدایی بالاتر به پیاده سازی و آزمایش سناریو ها و محیط های یکپارچه مداوم کمک خواهد کرد و همزمان با کاهش کلی مصرف منابع، آنها را برای معماری هایی که قابل ارائه بصورت خدمات باشند تبدیل به گزینه مطلوبی می کند.
ساختار Windows server container امکان به اشتراک گذاری، انتشار و انتقال container ها به هر جایی که نسخه های جدید ویندوز سرور اجرا می شود را فراهم می کند ، با استفاده از این تکنولوژی میلیون ها برنامه نویس ویندوزی آشنا با Asp.NET,Powershell و غیره می توانند تکنولوژی Container را ارتقا بدهند. دیگر نیاز نیست برنامه نویس ها بین مزایای Container ها و استفاده از تکنولوژی ویندوز سرور یکی را انتخاب کنند.
Docker در Microsoft Azure
مایکروسافت با در اختیار قرار دادن Docker Container برای لینوکس در Azure اولین نسخه پلتفرم باز Docker را در مایکروسافت Azure ارائه نمود. این حرکت مایکروسافت کاربران را توانا ساخت تا Docker container ها را در Azure به عنوان قسمتی از پشتیبانی از لینوکس گسترش دهند.
هم اکنون Azure از برنامه های کاربردی Docker در container های چندگانه به کمک API های Docker Orchestration پشتیبانی می کند. این عمل کاربران را یاری می دهد تا برنامه های کاربردیDocker را به طور مستقیم از طریق Docker client به Azure بیاورند. در نتیجه با توانمند سازی ویندوز سرور و کاربران لینوکس با ادغام Docker با Azure Gallery کاربران قادر خواهند بود بصورت مستقیم با repository بر روی Docker کار کنند. هم اکنون مایکروسافت در حال همکاری با شرکت Docker است تا پشتیبانی Azure از موتور Docker و API های Orchestration را بهبود دهد تا به آسانی Docker Hub را با Azure Gallery و پرتال مدیریت آن ترکیب کند.
Windows Server Container در اکوسیستم Docker
Docker با ایجاد یک اکو سیستم باز و سریع بر مبنای تکنولوژی container لینوکس کار شگفت انگیزی انجام داده است، Docker یک محیط کاربری آسان برای مدیریت چرخه حیات container هایی است که از مجموعه بسیار بزرگی از اپلیکشن های باز بیرون کشیده شده و در Docker سرپرستی می شوند.Container های ویندوز سرور به اکوسیستم Docker آورده شدند تا هر دو جامعه برنامه نویسان هر دو پلتفرم را پشتیبانی کنند.
به عنوان بخشی از آن، موتور Docker برای container های ویندوز سرور تحت پرتور پروژه متن باز Docker توسعه داده خواهد شد و مایکروسافت نیز به عنوان یک عضو فعال جامعه در آن شرکت خواهد کرد. نهایتاً مشتریان ویندوز نیز قادر خواهند بود همان Docker استاندارد و رابط کاربری آن را در محیط های توسعه چندگانه استفاده کنند.