الدليل التعليمي حول بدء تشغيل السحابة الإلكترونية

1. نظرة عامة

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

وتستند هذه الأداة إلى Knative، ما يتيح لك اختيار تشغيل حاوياتك إما مُدارة بالكامل باستخدام Cloud Run أو في مجموعة Google Kubernetes Engine باستخدام Cloud Run على GKE.

ما سوف تتعلمه

ستتعلم في هذا التمرين المعملي كيفية القيام بما يلي:

  • نشر تطبيق Cloud Run

المتطلبات الأساسية

  • يفترض هذا التمرين المعملي الإلمام ببيئة Cloud Console وCloud Shell.

2. الإعداد والمتطلبات

إعداد مشروع Cloud

  1. سجِّل الدخول إلى Google Cloud Console وأنشئ مشروعًا جديدًا أو أعِد استخدام مشروع حالي. إذا لم يكن لديك حساب على Gmail أو Google Workspace، عليك إنشاء حساب.

b35bf95b8bf3d5d8.png

a99b7ace416376c4.png

bd84a6d3004737c5.png

  • اسم المشروع هو الاسم المعروض للمشاركين في هذا المشروع. وهي سلسلة أحرف لا تستخدمها Google APIs. ويمكنك تعديله في أي وقت.
  • يكون رقم تعريف المشروع فريدًا في جميع مشاريع Google Cloud وغير قابل للتغيير (لا يمكن تغييره بعد تحديده). تنشئ Cloud Console سلسلة فريدة تلقائيًا. فعادةً لا تهتم بما هو. في معظم الدروس التطبيقية حول الترميز، يجب الإشارة إلى رقم تعريف المشروع (يتم تحديده عادةً على أنّه PROJECT_ID). وإذا لم يعجبك المعرّف الذي تم إنشاؤه، يمكنك إنشاء رقم تعريف عشوائي آخر. ويمكنك بدلاً من ذلك تجربة طلبك الخاص ومعرفة ما إذا كان متوفّرًا. ولا يمكن تغييره بعد هذه الخطوة وسيبقى طوال مدة المشروع.
  • لمعلوماتك، هناك قيمة ثالثة، وهي رقم المشروع الذي تستخدمه بعض واجهات برمجة التطبيقات. اطّلِع على مزيد من المعلومات حول هذه القيم الثلاث في المستندات.
  1. بعد ذلك، عليك تفعيل الفوترة في Cloud Console لاستخدام الموارد/واجهات برمجة التطبيقات في Cloud. إنّ تنفيذ هذا الدرس التطبيقي حول الترميز لن يكون مكلفًا أو مكلفًا على الإطلاق. لإيقاف تشغيل الموارد حتى لا تتحمل الفوترة بعد هذا البرنامج التعليمي، يمكنك حذف الموارد التي أنشأتها أو حذف المشروع بالكامل. يكون مستخدمو Google Cloud الجدد مؤهَّلون للانضمام إلى برنامج فترة تجريبية مجانية بقيمة 300 دولار أمريكي.

إعداد البيئة

يمكنك تفعيل Cloud Shell من خلال النقر على الرمز على يسار شريط البحث.

ecdc43ada29e91b.png

من Cloud Shell، فعِّل Cloud Run API:

gcloud services enable run.googleapis.com

إذا طُلب منك التفويض، انقر على "تفويض". للمتابعة.

6356559df3eccdda.png

يُفترض أن ينتج عن ذلك رسالة ناجحة مشابهة للرسالة التالية:

Operation "operations/acf.p2-327036483151-73d90d00-47ee-447a-b600-a6badf0eceae" finished successfully.

3- إعداد التطبيق

أولاً، عليك إعداد تطبيق Node.js بسيط وسريع ويستجيب لطلبات HTTP.

في Cloud Shell، أنشئ دليلاً جديدًا باسم starter-nodejs، ثم غيِّره إلى ذلك الدليل:

mkdir starter-nodejs
cd starter-nodejs

أنشِئ ملف package.json من خلال تنفيذ الأوامر أدناه:

cat > ./package.json << EOF
{
  "name": "cloudrun-starter-app",
  "version": "1.0.0",
  "description": "Node.js Starter Application",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "author": "",
  "license": "Apache-2.0",
  "dependencies": {
    "express": "^4.18.2"
  }
}
EOF

يحتوي الملف أعلاه على أمر بدء نص برمجي وتبعية على إطار عمل تطبيق الويب Express.

بعد ذلك، أنشِئ ملف index.js في الدليل نفسه من خلال تنفيذ الأوامر أدناه:

cat > ./index.js << EOF
const express = require('express');
const app = express();

app.get('/', (req, res) => {
  console.log('Received a request.');
  res.send("Hello Cloud Run!");
});

const port = process.env.PORT || 8080;

app.listen(port, () => {
  console.log('Listening on port', port);
});
EOF

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

4. نشر تطبيق Cloud Run

شغّل الأمر أدناه لنشر تطبيقك:

gcloud run deploy starter-app \
  --source . \
  --region us-central1 \
  --allow-unauthenticated \
  --max-instances=3

تأكيد إنشاء مستودع Artifact Registry:

Deploying from source requires an Artifact Registry Docker repository to store built containers. A repository named [cloud-run-source-deploy] in region [us-central1] will be created.

Do you want to continue (Y/n)? y

وكنتيجة للأمر السابق، تم تنفيذ الخطوات التالية:

d661616f9b2fffcf.png

يمكنك استكشاف نتائج هذه الخطوات في Cloud Console: Cloud Build وCloud Storage وArtifact Registry وCloud Run.

f536961280192919.png

5- تهانينا!

تهانينا! لقد نشرت للتو تطبيقًا في Cloud Run.

المواضيع التي تناولناها:

  • كيفية نشر تطبيق أوّلي على Cloud Run

الخطوة التالية:

اطّلع على الدروس التطبيقية الأخرى حول الترميز في Cymbal Eats:

تَنظيم

لتجنُّب تحمُّل الرسوم المفروضة على حسابك على Google Cloud مقابل الموارد المُستخدَمة في هذا الدليل التوجيهي، يمكنك إما حذف المشروع الذي يحتوي على الموارد أو الاحتفاظ بالمشروع وحذف الموارد الفردية.

حذف المشروع

أسهل طريقة لإزالة الفوترة هي حذف المشروع الذي أنشأته للبرنامج التعليمي.