التحكم الكامل في تحميل الحاويات: دليل خطوة بخطوة لنشر الحاويات في السحابة

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

  • قابلية النقل عبر التطوير، الاختبار، والإنتاج.
  • قابلية التوسع للتكيف بسرعة مع حركة المرور والطلب.
  • الكفاءة مع تقليل التكاليف مقارنة بالآلات الافتراضية التقليدية.

في هذا الدليل، سنستعرض إعدادًا كاملًا لتطبيق مدمج في حاوية مستضافة في السحابة، يغطي:

  1. أساسيات الحاويات ولماذا هي مثالية للسحابة.
  2. إعداد تطبيق مدمج باستخدام Docker.
  3. نشر الحاوية إلى مزود سحابة (باستخدام منصة جوجل السحابية كمثال).
  4. توسيع وإدارة الحاوية الخاصة بك في السحابة.

أساسيات الحاويات: كيف تتناسب الحاويات مع سير العمل في السحابة

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

لماذا الحاويات للسحابة؟

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

المكونات الأساسية لتحجيم الحاويات السحابية

  • محرك الحاويات: يدير ويشغل الحاويات (على سبيل المثال، دوكر، containerd).
  • التنظيم: يضمن موثوقية التطبيق وتوسيعه وتوازن الحمل (على سبيل المثال، كوبرنيتيس، ECS).
  • السجل: يخزن صور الحاويات للوصول إليها عبر البيئات (على سبيل المثال، دوكر هاب، GCR).

إعداد تطبيق يعتمد على دوكر

سنبدأ بتحجيم تطبيق Node.js بسيط.

الخطوة 1: إنشاء التطبيق

1. في مجلد المشروع، قم بتهيئة مشروع Node.js:   

Shell

 

2. إنشاء ملف خادم أساسي، app.js:

JavaScript

 

 

3. إضافة إكسبريس إلى المشروع:    

Shell

 

الخطوة 2: إنشاء ملف Dockerfile

يُحدد هذا الملف كيفية تعبئة التطبيق في حاوية Docker.

Dockerfile

 

الخطوة 3: بناء واختبار صورة Docker محليًا

1. قم ببناء صورة Docker:   

Shell

 

2. تشغيل الحاوية محليًا:

Shell

 

 

3. قم بزيارة `http://localhost:3000` في متصفحك. يجب أن ترى “مرحبًا، حاوية السحابة!” معروضة.

نشر الحاوية على منصة جوجل السحابية (GCP)

في هذا القسم، سنقوم بدفع صورة الحاوية إلى سجل حاويات جوجل (GCR) ونشرها على محرك كوبرنيتس من جوجل (GKE).

الخطوة 1: إعداد مشروع GCP

1. أنشئ مشروع GCP. انتقل إلى [وحدة تحكم جوجل السحابية] (https://console.cloud.google.com) وأنشئ مشروعًا جديدًا.

2. قم بتمكين واجهات برمجة التطبيقات لمحرك كوبرنيتس وسجل الحاويات لمشروعك.

الخطوة 2: دفع الصورة إلى سجل حاويات جوجل

1. قم بتسمية صورة دوكر لجوجل كلاود:

Shell

 

 

2. ادفع الصورة إلى GCR:

Shell

 

الخطوة 3: إنشاء مجموعة كوبرنيتس

1. ابدأ مجموعة GKE:

Shell

 

   

2. قم بتكوين kubectl للاتصال بمجموعة الجديدة الخاصة بك:

Shell

 

الخطوة 4: نشر التطبيق المعبأ في حاويات على GKE

1. أنشئ ملف k8s-deployment.yaml لتعريف النشر والخدمة:

YAML

 

2. انشر التطبيق على GKE:

Shell

 

3. احصل على عنوان IP الخارجي للوصول إلى التطبيق:

Shell

 

توسيع وإدارة الحاويات في GKE

الخطوة 1: توسيع النشر

لتعديل عدد النسخ (على سبيل المثال، للتعامل مع حركة مرور أعلى)، استخدم الأمر التالي:

Shell

 

سيقوم GKE بتوسيع التطبيق تلقائيًا من خلال إضافة نسخ وتوزيع الحمل.

الخطوة 2: مراقبة وإدارة السجلات

1. استخدم الأمر أدناه لعرض السجلات الخاصة بـ pod معين في Kubernetes:

Shell

 

2. قم بتمكين لوحة معلومات GKE لمراقبة حالة pod واستخدام الموارد وإدارة النشر بصريًا.

الخاتمة: الاستفادة من الحاويات لنشر سحابي قابل للتوسع

غطت هذه الدروس:

  1. تحويل تطبيق Node.js إلى حاوية باستخدام Docker.
  2. النشر إلى Google Kubernetes Engine (GKE) لاستضافة قابلة للتوسع ومدارة.
  3. إدارة وتوسيع الحاويات بفعالية في السحابة.

مع الحاويات في السحابة، تكتسب تطبيقاتك قابلية التوسع، والنقل، والكفاءة — مما يضمن أنها جاهزة للتعامل مع الطلب، والتكيف بسرعة، والبقاء متسقة عبر البيئات.

Source:
https://dzone.com/articles/a-step-by-step-guide-to-deploying-containers-in-the-cloud