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

1. نظرة عامة

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

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

ما ستتعلمه

في هذه الميزة الاختبارية، ستتعرّف على كيفية تنفيذ ما يلي:

  • نشر تطبيق Cloud Run

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

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

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

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

  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 Run API من Cloud Shell:

gcloud services enable run.googleapis.com

إذا طُلب منك منح الإذن، انقر على "منح الإذن" للمتابعة.

6356559df3eccdda.png

من المفترض أن يؤدي ذلك إلى ظهور رسالة نجاح مشابهة لما يلي:

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

3- تجهيز التطبيق

أولاً، عليك إعداد تطبيق بسيط يستند إلى Express ويعمل على 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 مقابل الموارد المستخدَمة في هذا البرنامج التعليمي، احذف المشروع الذي يحتوي على الموارد أو احتفظ بالمشروع واحذف الموارد الفردية.

حذف المشروع

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