ما المقصود بالوضع في حاوية؟

الوضع في حاوية عبارة عن عملية نشر برمجيات تجمع التعليمة البرمجية للتطبيق مع جميع الملفات والمكتبات التي يحتاجها للعمل على أي بنية أساسية. ولتشغيل أي تطبيق على جهاز الكمبيوتر، كان عليك عادةً تثبيت الإصدار الذي يطابق نظام تشغيل جهازك. على سبيل المثال، تحتاج إلى تثبيت إصدار Windows من حزمة برمجيات على جهاز Windows. ومع ذلك، يتيح لك الوضع في حاوية إمكانية إنشاء حزمة برمجيات أو حاوية واحدة تعمل على جميع أنواع الأجهزة وأنظمة التشغيل. 

ما مزايا الوضع في حاوية؟

يستخدم المطورون الوضع في حاوية لإنشاء التطبيقات الحديثة ونشرها نظرًا للمزايا التالية. 

قابلية الحمل

يستخدم مطورو البرامج الوضع في حاوية لنشر التطبيقات في بيئات متعددة بدون إعادة كتابة التعليمة البرمجية للبرنامج. يقومون ببناء تطبيق مرة واحدة ونشره على أنظمة تشغيل متعددة. على سبيل المثال، يقومون بتشغيل نفس الحاويات على أنظمة التشغيل Linux وWindows. يقوم المطورون أيضًا بترقية التعليمة البرمجية القديمة للتطبيق إلى إصدارات حديثة باستخدام حاويات للنشر.

القابلية للتكيف

الحاويات هي مكونات برمجية خفيفة الوزن تعمل بكفاءة. على سبيل المثال، يمكن للجهاز الظاهري تشغيل تطبيق حاوية بشكل أسرع لأنه لا يحتاج إلى تمهيد نظام تشغيل. لذلك، يسهل على مطوري البرامج إضافة حاويات متعددة للتطبيقات المختلفة على جهاز واحد. تستخدم مجموعة الحاويات موارد الحوسبة من نفس نظام التشغيل المشترك، ولكن الحاوية الواحدة لا تتداخل مع تشغيل حاويات أخرى.  

التعامل مع الأعطال

تقوم فرق تطوير البرمجيات باستخدام الحاويات لإنشاء تطبيقات متسامحة مع الأخطاء. يستخدمون حاويات متعددة لتشغيل الخدمات المصغرة على السحابة. نظرًا لأن الخدمات المصغرة الموضوعة في حاوية تعمل في مساحات مستخدم معزولة، فإن الحاوية المعيبة الواحدة لا تؤثر على الحاويات الأخرى. هذا يزيد من مرونة التطبيق وتوافره.

المرونة

تعمل تطبيقات الحاويات في بيئات حوسبة معزولة. يمكن لمطوري البرامج استكشاف أخطاء التعليمة البرمجية للتطبيق وتغييره بدون التدخل في نظام التشغيل أو الأجهزة أو خدمات التطبيقات الأخرى. يمكنهم تقصير دورات إصدار البرامج والعمل على التحديثات بسرعة باستخدام نموذج الحاوية.

ما حالات استخدام الوضع في حاوية؟

فيما يلي بعض حالات استخدام الوضع في حاوية.

الترحيل السحابي

الترحيل السحابي، أو طريقة الرفع والنقل، هو إستراتيجية برمجية تتضمن تعبئة التطبيقات القديمة في حاويات ونشرها في بيئة حوسبة سحابية. يمكن للمؤسسات تحديث تطبيقاتها بدون إعادة كتابة التعليمة البرمجية للبرنامج بأكمله.

اعتماد بنية الخدمات المصغرة

المؤسسات التي تسعى إلى إنشاء تطبيقات سحابية باستخدام خدمات مصغرة تتطلب تقنية الوضع في حاوية. بنية الخدمات المصغرة هي نهج تطوير برمجيات يستخدم مكونات برامج متعددة ومترابطة لتقديم تطبيق وظيفي. يكون لكل خدمة مصغرة وظيفة فريدة ومحددة. يتكون التطبيق السحابي الحديث من العديد من الخدمات المصغرة. على سبيل المثال، قد يحتوي تطبيق بث الفيديو على خدمات مصغرة لمعالجة البيانات وتتبع المستخدم والفوترة والتخصيص. يوفر الوضع في حاوية أداةً برمجيةً لوضع الخدمات المصغرة في حزم كبرامج قابلة للنشر على منصات مختلفة.

أجهزة إنترنت الأشياء

تحتوي أجهزة إنترنت الأشياء (IoT) على موارد حوسبة محدودة، ما يجعل تحديث البرامج اليدوية عمليةً معقدةً. يسمح الوضع في حاوية للمطورين بنشر التطبيقات وتحديثها عبر أجهزة إنترنت الأشياء بسهولة.

ما كيفية عمل الوضع في حاوية؟

يتضمن الوضع في حاوية بناء حزم برمجية مكتفية ذاتيًا تعمل باستمرار، بغض النظر عن الأجهزة التي تعمل عليها. يقوم مطورو البرامج بإنشاء ونشر صور الحاويات، أي الملفات التي تحتوي على المعلومات الضرورية لتشغيل تطبيق حاوية. يستخدم المطورون أدوات الوضع في حاوية لإنشاء صور حاوية بناءً على مواصفات صورة مبادرة الحاوية المفتوحة (OCI). مبادرة الحاوية المفتوحة (OCI) هي مجموعة مفتوحة المصدر توفر تنسيقًا قياسيًا لإنشاء صور الحاوية. صور الحاوية للقراءة فقط ولا يمكن تغييرها بواسطة نظام الكمبيوتر.

صور الحاوية هي الطبقة العليا في نظام الحاويات الذي يتكون من الطبقات التالية.

البنية التحتية

البنية الأساسية هي طبقة الأجهزة الخاصة بنموذج الحاوية. تشير إلى الكمبيوتر الفعلي أو خادم bare-metal الذي يقوم بتشغيل تطبيق الحاوية. 

نظام التشغيل

الطبقة الثانية التي يشتمل عليها الوضع في حاوية هي نظام التشغيل. Linux هو نظام تشغيل شائع للوضع في حاوية مع أجهزة الكمبيوتر المحلية. في الحوسبة السحابية، يستخدم المطورون الخدمات السحابية مثل AWS EC2 لتشغيل تطبيقات الحاوية. 

محرك الحاوية

محرك الحاوية، أو بيئة تشغيل الحاويات، هو برنامج يقوم بإنشاء حاويات بناءً على صور الحاوية. يعمل كعامل وسيط بين الحاويات ونظام التشغيل، ويوفر ويدير الموارد التي يحتاجها التطبيق. على سبيل المثال، يمكن لمحركات الحاويات إدارة حاويات متعددة على نفس نظام التشغيل عن طريق إبقائها مستقلةً عن البنية التحتية الأساسية وعن بعضها البعض. 

التطبيق والتبعيات

الطبقة العليا من بنية الوضع في حاوية هي التعليمة البرمجية للتطبيق والملفات الأخرى التي يحتاجها في التشغيل، مثل تبعيات المكتبة وملفات التكوين ذات الصلة. قد تحتوي هذه الطبقة أيضًا على نظام تشغيل ضيف خفيف يتم تثبيته عبر نظام التشغيل المضيف.

ما المقصود بتنسيق الحاويات؟

تنسيق الحاويات هو تقنية برمجية تسمح بالإدارة التلقائية للحاويات. ويعد تنسيق الحاويات هذا ضروريًا في تطوير التطبيقات السحابية الحديثة لأن التطبيق قد يحتوي على آلاف الخدمات المصغرة في حاوياتها الخاصة. إن العدد الكبير من الخدمات المصغرة الموضوعة في حاويات يجعل من المستحيل على مطوري البرامج إدارتها يدويًا.

مزايا تنسيق الحاويات

يستخدم المطورون أدوات تنسيق الحاويات لبدء تشغيل الحاويات وإيقافها وإدارتها تلقائيًا. تسمح أدوات تنسيق الحاويات للمطورين بتوسيع نطاق التطبيقات السحابية بدقة وتجنب الأخطاء البشرية. على سبيل المثال، يمكنك التحقق من نشر الحاويات بموارد كافية من النظام الأساسي المضيف. 

ما أنواع تقنية الحاويات؟

فيما يلي بعض الأمثلة على التقنيات الشائعة التي يستخدمها المطورون في الوضع في حاوية.

Docker

يُعد Docker، أو Docker Engine، بيئة تشغيل حاويات مفتوحة المصدر وشائعة تسمح لمطوري البرامج ببناء ونشر واختبار تطبيقات الحاويات على منصات مختلفة. حاويات Docker عبارة عن حزم قائمة بذاتها تتضمن التطبيقات والملفات ذات الصلة التي يتم إنشاؤها باستخدام إطار Docker.

Linux

Linux هو نظام تشغيل مفتوح المصدر مزود بتقنية حاوية مدمجة. حاويات Linux هي بيئات قائمة بذاتها تسمح بتشغيل العديد من التطبيقات المستندة إلى Linux على جهاز مضيف واحد. يستخدم مطورو البرمجيات حاويات Linux لنشر التطبيقات التي تكتب أو تقرأ كميات كبيرة من البيانات. لا تقوم حاويات Linux بنسخ نظام التشغيل بأكمله إلى بيئتها الافتراضية. بدلاً من ذلك، تتكون الحاويات من الوظائف الضرورية المخصصة في مساحة اسم Linux.  

Kubernetes

Kubernetes هو منسق حاويات مفتوح المصدر شهير يستخدمه مطورو البرامج في نشر عدد كبير من الخدمات المصغرة وتوسعة نطاقها وإدارتها. يحتوي على نموذج بياني يُسهّل أتمتة الحاويات. يضمن النموذج البياني أن تتخذ Kubernetes الإجراء المناسب للوفاء بالمتطلبات بناءً على ملفات التكوين. 

ما المقصود بجهاز Java الافتراضي؟

الجهاز الظاهري (VM) هو نسخة رقمية من الجهاز المادي للجهاز المضيف ونظام التشغيل. قد يحتوي الجهاز المضيف على العديد من الأجهزة الافتراضية (VM) التي تشترك في وحدة المعالجة المركزية ووحدة التخزين والذاكرة. يقوم مراقب الأجهزة، وهو برنامج يراقب الأجهزة الافتراضية (VM)، بتخصيص موارد الحوسبة لجميع الأجهزة الافتراضية (VM) بغض النظر عما إذا كانت التطبيقات تستخدمها أم لا.

الوضع في حاوية مقارنةً بالأجهزة الافتراضية

يعتبر الوضع في حاوية مفهومًا مشابهًا للأجهزة الافتراضية ولكنه محسّن عنه. بدلاً من نسخ طبقة الأجهزة، يقوم الوضع في حاوية بإزالة طبقة نظام التشغيل من البيئة ذاتية الحاويات. يسمح هذا للتطبيق بالعمل بشكل مستقل عن نظام التشغيل المضيف. يمنع الوضع في حاوية إهدار الموارد لأن التطبيقات مزودة بالموارد التي تحتاجها بالضبط. 

ما هي الحوسبة دون خادم؟

تشير الحوسبة بلا خادم إلى تقنية حوسبة سحابية يقوم فيها بائع السحابة بالإدارة الكاملة للبنية الأساسية للخادم الذي يُشغل التطبيق. وهذا يعني أن المطورين والمؤسسات لا يحتاجون إلى تكوين الموارد أو صيانتها أو توفيرها على خادم السحابة. تسمح الحوسبة بلا خادم للمؤسسات بتوسعة نطاق موارد الحوسبة تلقائيًا وفقًا لعبء العمل. 

الوضع في حاوية مقارنةً بالحوسبة بلا خادم

تسمح الحوسبة بلا خادم بالنشر الفوري للتطبيقات نظرًا لعدم وجود تبعيات مثل المكتبات أو ملفات التكوين المعنية. لا يفرض بائع السحابة رسومًا على موارد الحوسبة عندما يكون التطبيق بلا خادم خاملاً. الحاويات، من ناحية أخرى، تكون أكثر قابليةً للحمل، ما يمنح المطورين التحكم الكامل في بيئة التطبيق. 

ما المقصود بالمصطلح الأصلي للسحابة (Cloud native)؟

الأصلي للسحابة (Cloud native) هي طريقة لتطوير البرامج تقوم بإنشاء تطبيق واختباره ونشره في السحابة. يعني المصطلحالأصلي للسحابة (Cloud native) أن التطبيق قد ولد ووُجد في بيئة حوسبة سحابية. تقوم المنظمات بإنشاء تطبيقات أصلية للسحابة لأنها قابلة للتوسع بدرجة عالية ومرنة.

الوضع في حاوية مقارنةُ بالخدمات الأصلية للسحابة

يتطلب تطوير التطبيقات الأصلية للسحابة تقنيات وأساليب مختلفة عن التطبيقات المتجانسة التقليدية. الوضع في حاوية هو إحدى التقنيات التي تسمح للمطورين بإنشاء تطبيقات أصلية للسحابة. وهو يعمل مع التقنيات الأصلية للسحابة الأخرى، مثل شبكة الخدمة وواجهات برمجة التطبيقات، للسماح للخدمات المصغرة بالعمل بشكل متماسك في تطبيق أصلي للسحابة. 

ما المقصود بـ AWS App2Container؟

AWS App2Container هي أداة للوضع في حاوية تسمح لمطوري البرامج بتحديث التطبيقات القديمة. يستخدم المطورون App2Container لتحويل تطبيقات Java و.NET إلى تطبيقات موضوعة في حاوية:

  • يوفر App2Container أدوات قياسية لترحيل التطبيقات القائمة على النظام الأساسي الحالية إلى بيئة AWS.
  • مع App2Container، يضمن المطورون الأمان عند توسعة نطاق التطبيقات السحابية.
  • يستخدم المطورون App2Container لتبسيط تحديد التبعيات والتكوينات عند إنشاء صور حاوية.

 ابدأ استخدام الوضع في حاوية على AWS من خلال الاشتراك في حساب AWS اليوم.

الخطوات التالية للتخزين في الحاويات من AWS

التحقق من الموارد الإضافية المتعلقة بالمنتج
معرفة المزيد حول خدمات الحوسبة 
تسجيل الاشتراك للحصول على حساب مجاني

تمتع بالوصول الفوري إلى طبقة AWS المجانية. 

التسجيل 
بدء البناء في وحدة التحكم

ابدأ في البناء باستخدام AWS في وحدة إدارة تحكم AWS.

تسجيل الدخول