1. نظرة عامة
Cloud Shell هي بيئة تطوير وتشغيل على الإنترنت يمكن الوصول إليها في أي مكان باستخدام المتصفح. يمكنك إدارة مواردك باستخدام وحدة التحكّم على الإنترنت المحمَّلة مسبقًا بأدوات مثل أداة سطر الأوامر gcloud وkubectl وغير ذلك. يمكنك أيضًا تطوير تطبيقاتك المستندة إلى السحابة الإلكترونية وإنشاؤها وتصحيح أخطائها ونشرها باستخدام "محرّر Cloud Shell" على الإنترنت.
في هذا التمرين العملي، ستستخدم Cloud Shell وCloud Shell Editor لإنشاء تطبيقات مستندة إلى حاويات ونشرها واختبارها باستخدام Cloud Code على المحاكيات المحلية وعلى الخدمات الفعلية.
ما ستتعلمه
- التنقّل والتعرّف على الميزات الرئيسية في Cloud Shell
- التدرّب على أنماط استخدام مختلفة في Cloud Shell
- تخصيص بيئة Cloud Shell للاستخدام المتقدّم
- التعرّف على خيارات وميزات Cloud Code
- معرفة تفاصيل تطبيقات Cloud Code for Kubernetes
- استخدام محاكيات محلية مثل Minikube
المتطلبات الأساسية
- ستحتاج إلى مشروع على Google Cloud Platform لديه أذونات "محرّر"، وحساب على Google Cloud Platform، وإذن بالوصول إلى Cloud Shell.
- بالنسبة إلى الأجزاء الاختيارية، ستحتاج إلى محاكي طرفي وحزمة تطوير البرامج (SDK) من Google Cloud مثبّتة.
2. الإعداد والمتطلبات
إعداد البيئة بوتيرة ذاتية
- سجِّل الدخول إلى Google Cloud Console وأنشِئ مشروعًا جديدًا أو أعِد استخدام مشروع حالي. إذا لم يكن لديك حساب على Gmail أو Google Workspace، عليك إنشاء حساب.



- اسم المشروع هو الاسم المعروض للمشاركين في هذا المشروع. وهي سلسلة أحرف لا تستخدمها Google APIs. ويمكنك تعديله في أي وقت.
- رقم تعريف المشروع هو معرّف فريد في جميع مشاريع Google Cloud ولا يمكن تغييره بعد ضبطه. تنشئ Cloud Console تلقائيًا سلسلة فريدة، ولا يهمّك عادةً ما هي. في معظم دروس البرمجة، عليك الرجوع إلى رقم تعريف المشروع (يتم تحديده عادةً على أنّه
PROJECT_ID). إذا لم يعجبك رقم التعريف الذي تم إنشاؤه، يمكنك إنشاء رقم تعريف عشوائي آخر. يمكنك بدلاً من ذلك تجربة اسم مستخدم من اختيارك لمعرفة ما إذا كان متاحًا. لا يمكن تغيير هذا الخيار بعد هذه الخطوة وسيظل ساريًا طوال مدة المشروع. - للعلم، هناك قيمة ثالثة، وهي رقم المشروع الذي تستخدمه بعض واجهات برمجة التطبيقات. يمكنك الاطّلاع على مزيد من المعلومات عن كل هذه القيم الثلاث في المستندات.
- بعد ذلك، عليك تفعيل الفوترة في Cloud Console لاستخدام موارد/واجهات برمجة تطبيقات Cloud. لن تكلفك تجربة هذا الدرس التطبيقي حول الترميز الكثير من المال، إن لم تكلفك شيئًا على الإطلاق. لإيقاف الموارد كي لا يتم تحصيل رسوم منك بعد هذا البرنامج التعليمي، يمكنك حذف الموارد التي أنشأتها أو حذف المشروع بأكمله. يمكن لمستخدمي Google Cloud الجدد الاستفادة من برنامج الفترة التجريبية المجانية بقيمة 300 دولار أمريكي.
3- العمل باستخدام "وحدة طرفية Cloud Shell"
في هذا القسم، ستتعرّف على "وحدة طرفية Cloud Shell"، وكيفية التنقّل في واجهة المستخدم، واستخدام الميزات، واستكشاف خيارات الإعداد وطرق استخدامها المختلفة لمساعدتك في تعزيز إنتاجيتك.
تتضمّن Cloud Shell أداتَين رئيسيتَين، وهما وحدة طرفية Cloud Shell ومحرِّر Cloud Shell. في هذا الدرس العملي، سيتم استخدام مصطلحي "وحدة طرفية Cloud Shell" و"Cloud Shell" بالتبادل، ولكن سيُشار دائمًا إلى "المحرّر" باسم "محرّر Cloud Shell" لإجراء تمييز واضح بين محاكي الوحدة الطرفية وبيئة التطوير المتكاملة.
Cloud Shell هي واجهة Shell كاملة الوظائف مستندة إلى السحابة الإلكترونية ومبنية على جهاز Linux مؤقت يستند إلى Debian على Google Compute Engine، وهي متاحة لك دائمًا للاستخدام. تتضمّن هذه الحزمة Google Cloud SDK مثبَّتًا والعديد من الأدوات ذات الصلة، مثل git وkubectl وkubectx وcurl وpython3 وtmux...
يتم الاحتفاظ بدليل $HOME في Cloud Storage من خلال Google Cloud ويتم تحميله تلقائيًا في كل مرة يبدأ فيها جهاز Cloud Shell، لذلك لن تفقد أي معلومات تتركها ضمنه حتى إذا تم إيقاف جهاز Cloud Shell. وهذا يعني أنّه في حال إعادة تفعيل Cloud Shell، سيكون دليل $HOME وأي تخصيص أجريته عليه متاحًا لك لاستخدامه.
تشغيل Cloud Shell
- انتقِل إلى
console.cloud.google.com، وإذا لم يسبق لك تسجيل الدخول إلى وحدة تحكّم Google Cloud Platform، أدخِل بيانات اعتماد Google. ستظهر لك واجهة المستخدم الرئيسية لوحدة تحكّم Google Cloud Platform. - اختَر رقم تعريف مشروع Google Cloud Platform الذي ستعمل عليه في أداة اختيار شريط القوائم في Cloud Console:

- ابحث عن الزر لتفعيل Cloud Shell على الجانب الأيسر من شريط القوائم، بجانب أفاتار حسابك:

- انقر على رمز Cloud Shell وسيتم فتح "وحدة تحكّم Cloud Shell"، ما يؤدي إلى ظهور لوحة جديدة أسفل واجهة مستخدم GCP Console مباشرةً:

في هذه اللوحة، يتوفّر ما يُعرف باسم "نافذة Cloud Shell".
- انتقِل إلى "وحدة Cloud Shell الطرفية"، ولاحظ أنّه بما أنّك اخترت رقم تعريف مشروع GCP المناسب من وحدة تحكّم GCP، فإنّ Cloud Shell يعرفه، لذا لن تحتاج إلى تحديده مرة أخرى:
echo $GOOGLE_CLOUD_PROJECT
سيؤدي ذلك إلى إخراج رقم تعريف مشروعك على Google Cloud، والذي يظهر أيضًا في طلب Cloud Shell.
التبديل بين الأدوات
توفّر لك Cloud Shell العديد من الأدوات وخيارات الإعداد. راجِعها من خلال الخيارات المتاحة في قائمة Cloud Shell:

- انقر على الزر
في الشريط الذي سيسمح لك بتكبير نافذة Cloud Shell Terminal واستخدام كل مساحة علامة التبويب في المتصفّح:

- توسّع Cloud Shell وتملأ مساحة علامة تبويب المتصفّح بالكامل:

- انقر عليه مرة أخرى. ستتم إعادة مساحة علامة تبويب المتصفّح إلى الوضع المشترَك بين Cloud Console وCloud Shell.
فتح علامات تبويب جديدة
يتيح لك "طرفية Cloud Shell" فتح أي عدد تريده من علامات التبويب.
- انقر على الزر التالي وافتح علامة تبويب جديدة.

- أغلِق الآن علامة التبويب الجديدة بالنقر على علامة "x" بجانب اسم علامة التبويب أو بكتابة
exitفي الصدفة المقابلة:

فتح نافذة جديدة
يتيح لك فتح Cloud Shell في نافذة متصفّح جديدة إمكانية استخدام Cloud Console في نافذة وCloud Shell في نافذة أخرى.
- انقر على الزر التالي ولاحظ كيف يتم فتح Cloud Shell في علامة تبويب متصفّح جديدة:

- لاحظ أنّ Cloud Shell يوفّر الآن خيارات شريط الأدوات نفسها، ولكن بمظهر مختلف قليلاً:

- يجب البقاء في علامة تبويب المتصفّح الجديدة هذه طوال الأقسام التالية.
نقل الجلسات باستخدام Tmux
يتضمّن Cloud Shell أداة tmux. Tmux هو برنامج تجميع طرفي شائع جدًا، وهو يشبه برنامج GNU Screen. يتيح الدمج مع tmux لخدمة Cloud Shell إمكانية الحفاظ على جلستك بغض النظر عن مكانك.
في الخطوات التالية، ستتدرب على هذا المفهوم لفهم الميزة بشكل أفضل.
تحريك نافذة "وحدة طرفية Cloud Shell"
- في علامة التبويب Cloud Shell التي فتحتها للتو، اكتب الأمر
top:

يوفّر الأمر top عرضًا في الوقت الفعلي للعمليات التي يتم تشغيلها في "وحدة Cloud Shell الطرفية". ستستخدمه لتصوّر استمرار الجلسة في Cloud Shell الذي يوفّره tmux.
- ارجع إلى علامة التبويب الأولى في المتصفّح (التي تتضمّن Cloud Console).
- لاحظ أنّه بما أنّك قرّرت سابقًا فتح Cloud Shell في نافذة جديدة، ستظهر رسالة تقول "
Your session was transferred to another browser tab. You can disable this from the "Tmux Settings" option in the Cloud Shell settings menu.". - انقر على زر إعادة الربط:

بعد ذلك، ستتمكّن من الوصول إلى الصدفة التي كانت تعمل في علامة التبويب الثانية، وسيستمر تشغيل الأمر top هنا كما تركته تمامًا.
- انتقِل إلى علامة التبويب الثانية في المتصفّح، حيث فتحت Cloud Shell في نافذة جديدة.
- انقر على إعادة الربط. ستستعيد العملية الأهم كما كانت تعمل قبل إغلاق النافذة.
تقسيم النوافذ باستخدام Tmux
إنّ Tmux أكثر فائدة من الاستخدام الذي استخدمته فيه للتو. لا يتضمّن هذا المختبر برنامجًا تعليميًا عن tmux، ولكن يمكنك العثور على مزيد من المعلومات حوله في دليل البدء الرسمي في استخدام tmux.
ومع ذلك، يمنح tmux Cloud Shell بعض الميزات الإضافية التي يمكن استخدامها في محاكيات الطرفية المحلية. لتوضيح ذلك، عليك تقسيم النافذة الطرفية إلى قسمَين جنبًا إلى جنب.
- في Cloud Shell، اضغط على
Ctrl + b، ثم على%. - لاحظ كيف ينشئ tmux جزءًا جديدًا على يمين الجزء الأصلي:

- انقر على اللوحة الثانية واكتب
exit.
استخدام ميزة "معاينة الويب"
يمكن أن تنشئ Cloud Shell أيضًا عملية إعادة توجيه تلقائي للمنفذ من جهاز Cloud Shell الذي يعمل على السحابة الإلكترونية من خلال المتصفّح المحلي الذي يعمل على جهاز الكمبيوتر.
- اكتب ما يلي في Cloud Shell:
python3 -m http.server 8080
- انتقِل إلى خيار معاينة الويب في أعلى يسار الصفحة وانقر على المعاينة على المنفذ 8080:

سيتم فتح علامة تبويب جديدة تحتوي على الصفحة التلقائية التي يتم عرضها في هذا المنفذ.
يُرجى العلم أنّه يمكنك تغيير المنفذ ومعاينة أي منفذ يعرضه تطبيقك في Cloud Shell، وليس المنفذ 8080 فقط.
الوصول إلى خيارات Cloud Shell الإضافية
تتوفّر إعدادات وخيارات إضافية في Cloud Shell.
- انقر على النقاط الثلاث في قائمة Cloud Shell للوصول إلى الخيارات:

أهم الخيارات هنا هي إمكانية تحميل الملفات أو تنزيلها إلى Cloud Shell، وإعادة تشغيل جهاز Cloud Shell في حال واجهت أي مشاكل.
4. استخدام "محرّر Cloud Shell"
من أهم ميزات Cloud Shell هي "محرّر Cloud Shell". هذه بيئة تطوير متكاملة (IDE) تستند إلى مشروع Eclipse Theia المفتوح المصدر، وساهمت فيها Google وغيرها. يُشبه المظهر العام لـ VSCode إلى حد كبير، إذ يستخدم كلاهما العديد من المكوّنات الأساسية الشائعة مفتوحة المصدر، مثل محرر Monaco ونموذج الإضافة وبروتوكول خادم اللغة وبروتوكول أداة تصحيح الأخطاء.
بما أنّ Theia/Cloud Shell Editor أداة معقّدة إلى حدّ ما، فإنّ وصف جميع ميزات Cloud Shell Editor يخرج عن نطاق هذا المختبر. في هذا القسم، سنتعرّف على بعض المفاهيم الأساسية والميزات الفريدة المتاحة في عملية التنفيذ هذه على Google Cloud.
الوصول إلى "محرّر Cloud Shell"
يمكن الوصول إلى "محرِّر Cloud Shell" بثلاث طرق مختلفة:
- الوصول من سطر الأوامر
- الوصول من خلال قائمة Cloud Shell
- الانتقال إلى عنوان URL في المتصفّح
يمكنك تجربة هذه الطرق من خلال اتّباع الخطوات التالية:
- افتح ملف .bashrc من سطر الأوامر باستخدام الأمر التالي:
cloudshell edit $HOME/.bashrc
- افتح Cloud Shell من القائمة، وذلك بالنقر على الزر "فتح المحرّر"
:
سيؤدي ذلك إلى فتح "محرّر Cloud Shell" مع إبقاء "وحدة طرفية Cloud Shell" مفتوحة. إذا كنت تريد استخدام مساحة علامات التبويب بالكامل في Cloud Shell Editor فقط، انقر على الزرّ على يسار الزرّ "تعديل" لإغلاق الوحدة الطرفية. سيحدّد هذان الزرّان (فتح/إغلاق المحرّر وفتح/إغلاق نافذة الأوامر) الأداة التي ستظهر في علامة تبويب المتصفّح. تدَّرب على النقر على كليهما لتتقن هذه العملية. - استدعِ محرِّر Cloud Shell من شريط عنوان URL في المتصفّح عن طريق كتابة
ide.cloud.google.com.
استخدام سطر الأوامر من "محرِّر Cloud Shell"
على الرغم من أنّ "وحدة طرفية Cloud Shell" و"محرّر Cloud Shell" يتواجدان معًا في علامة تبويب المتصفّح نفسها، يمكنك الاستغناء عن "وحدة طرفية Cloud Shell" واستخدام "محرّر Cloud Shell" فقط، والوحدة الطرفية المتاحة من داخل "محرّر Cloud Shell"، لتلبية جميع احتياجاتك. قد يكون ذلك منطقيًا إذا كنت معتادًا على العمل داخل بيئة التطوير المتكاملة (IDE) وتعرف الاختصارات المختلفة وديناميكية اللوحات من VSCode.
افتح Cloud Shell Editor باستخدام أيّ من الطرق المذكورة أعلاه. بعد ذلك، انتقِل إلى قائمة "المحرّر" واختَر Terminal > New Terminal (أو اضغط على Ctrl + `` في لوحة المفاتيح). سيتم فتح لوحة طرفية جديدة في الجزء السفلي من "محرِّر Cloud Shell" يمكنك استخدامها لتلبية جميع احتياجاتك من الأوامر:

سيمنحك ذلك أيضًا خيار إدارة لوحات طرفية مختلفة بدون الحاجة إلى استخدام إدارة لوحات tmux كما كان الحال في "محطة Cloud Shell الطرفية".
تخصيص إعدادات Cloud Shell
توفّر Cloud Shell العديد من خيارات التخصيص، بدءًا من المظهر العام والسلوك الأساسي، ووصولاً إلى إعدادات بدء تشغيل "وحدة طرفية Cloud Shell" والعمليات التفصيلية. ستراجع الخيارات المختلفة بالتفصيل في الأقسام التالية.
انتقِل إلى قائمة "نافذة Cloud Shell" (Cloud Shell Terminal) وانقر على رمز الترس. ستظهر عدة خيارات إعداد:

راجِع بعضها:
- مواضيع الألوان: يمكنك استخدام "فاتح" أو "داكن" أو مجموعة من الألوان المخصّصة (الألوان الأساسية، مثل لون الخط ولون الخلفية).
- حجم النص: 5 أحجام مختلفة للخط للاختيار من بينها
- الخط: Courier new أو Monospace
- نسخ الإعدادات: يمكنك هنا تغيير اختصار لوحة المفاتيح للنسخ ليكون مشابهًا للاختصارات المستخدَمة في معظم برامج محاكاة سطر الأوامر الشائعة في Linux.
- لوحة المفاتيح: ربط مفتاح Meta بمفتاح Alt (يكون مفتاح Meta هو مفتاح ESC تلقائيًا) وربط مفتاح Alt Gr في بعض أنظمة التشغيل
ضبط بيئة Shell
بصفتك محاكي Terminal يشغّل برنامج تنفيذ أوامر في جهاز Linux مستند إلى Debian، يمكنك تخصيص بيئة برنامج تنفيذ الأوامر بالطريقة نفسها التي تخصّصها في Linux. وبالتالي، سيتم استخراج أي ملفات إعدادات متوفرة في $HOME (مثل .bashrc)) في كل مرة يتم فيها إنشاء عملية shell تسجيل دخول جديدة.
تتيح لك Cloud Shell أيضًا تحديد الإجراءات التي تريد تنفيذها في كل مرة يتم فيها بدء مثيل Cloud Shell في ملف إعداد خاص يُسمى .customize_environment. يمكنك الاطّلاع على مزيد من المعلومات حول هذا الموضوع في مستندات تخصيص البيئة.
تدريب على إضافة بعض الإعدادات إلى "وحدة Cloud Shell الطرفية" انتقِل إلى وحدة Cloud Shell الطرفية واستنسِخ مستودع رمز نموذجي التالي:
git clone https://gitlab.com/javiercanadillas/cloud-code-getting-started.git
يحتوي هذا المستودع على نماذج للحدثَين الرئيسيين اللذين قد تحتاج إلى إعداد Cloud Shell لهما:
- عندما تبدأ مثيل Cloud Shell: سيتم قراءة الملف
$HOME/.customize_environment. يمكن العثور على سجلّ التنفيذ لهذه العملية في/var/log/customize_environmentوسيتم إنشاء/google/devshell/customize_environment_doneعند التنفيذ بنجاح. - عند بدء عملية shell جديدة (نافذة جديدة، علامة تبويب جديدة، وما إلى ذلك)، ستتم قراءة ملفات إعداد bash shell العادية.
يمكنك التدريب على استخدام كليهما باتّباع الخطوات التالية:
- نفِّذ الأمر التالي لتشغيل التخصيصات التي يوفّرها المستودع:
cd cloud-code-getting-started
source set_env_cust.sh
يؤدي ذلك إلى إعداد خيارات التخصيص المذكورة سابقًا وتفعيلها.
- لاحظ موجه الأوامر الجديد. لقد أعدّ نص برمجي bash مصدره الملف
.bash_profileهذا الطلب الجديد الذي يكون أقصر من الطلب التلقائي، ويتضمّن معلومات Git الأساسية، مثل الفرع الذي تم استخراجه أو حالة git. - يتوفّر الآن الاسم المستعار
codeالجديد للأمرcloudshell editوهو أقصر. استخدِمها للاطّلاع على محتوى الملف.bash_profile:
code $HOME/.bash_profile
- استخدِم الأمر
batالذي تم تثبيته حديثًا للاطّلاع على محتوى الملف.customize_environment:
bat $HOME/.customize_environment
bat هو إصدار محسّن من أداة cat الشائعة في نظام التشغيل Unix. تعرض نتيجة bat هنا الأمر apt install المستخدَم لإعادة تثبيت hey، وهي أداة لاختبار التحميل، في كل مرة يتم فيها إنشاء جهاز Cloud Shell جديد.
- اختبِر ما إذا كان كل شيء يعمل بشكل صحيح من خلال النقر على قائمة Cloud Shell (النقاط الثلاث في أعلى يسار الصفحة) واختيار إعادة التشغيل.
سيسمح لك ذلك بمحاكاة انتهاء مهلة Cloud Shell وإعادة إنشاء الآلة الافتراضية، ما يضمن ضبط كل شيء بشكل صحيح.
تخصيص صورة حاوية Cloud Shell
يتيح لك خيار التخصيص هذا إنشاء صورة Docker تعمل كبيئة Cloud Shell مخصّصة تتضمّن حِزمًا إضافية وإعدادات مخصّصة. سيؤدي إنشاء الصورة إلى تشغيل مثيل مؤقت بالكامل من Cloud Shell، وبالتالي لن يتم الاحتفاظ بكل من الجهاز الافتراضي لـ Cloud Shell والدليل $HOME المرفق به. ومع ذلك، سيكون إنشاء الصور مفيدًا لحالات الاستخدام التي تحتاج فيها إلى توفير مثيلات Cloud Shell خاصة بوظائف معيّنة لجهات خارجية حتى تتمكّن من تنفيذ مهمة معيّنة بأكثر الطرق فعالية.
بدلاً من تخصيص البيئة كما فعلت في القسم السابق، ستدمج تغييراتك في صورة جديدة تُستخدَم لتشغيل Cloud Shell. ويوفّر ذلك مزايا واضحة، إذ سيبدأ تشغيل Cloud Shell المخصّص بشكل أسرع.
إنشاء صورة Cloud Shell جديدة
- ابدأ عملية إنشاء صورة حاوية Cloud Shell من خلال كتابة ما يلي في "وحدة طرفية Cloud Shell":
cloudshell env create-custom-image custom-cloud-shell
cd custom-cloud-shell
يؤدي ذلك إلى إنشاء دليل جديد في Cloud Shell ومستودع جديد في Cloud Source Repositories بالاسم نفسه لاستضافة الرمز البرمجي. يتم أيضًا استنساخ عيّنة Dockerfile في $HOME/custom-cloud-shell/ directory.
- أضِف السطر
RUN apt install -y heyإلى السطر الأخير من Dockerfile:
echo "RUN apt install -y hey" >> $HOME/custom-cloud-shell/Dockerfile
يؤدي ذلك إلى إعداد التخصيص نفسه الذي كان متوفّرًا في .customize_environment، ولكنّه مضمّن في حاوية بدلاً من ذلك.
- إنشاء الصورة محليًا:
cloudshell env build-local
- اختبِر الصورة الجديدة من خلال تنفيذ الأمر التالي:
cloudshell env run
ستظهر لك الآن نافذة صدفة داخل الصورة.
- اختبِر تثبيت الأمر
heyمن خلال تنفيذه:
hey
- عند الانتهاء، اكتب
exitللخروج من الحاوية:
exit
- ادفع التغييرات إلى Cloud Source Repository والصورة إلى Container Registry:
git commit -a -m "Initial commit"
git push origin master
cloudshell env push
اختبار الصورة الجديدة
- اجعل الصورة متاحة للجميع حتى تتمكّن من استخدامها:
gsutil iam ch allUsers:objectViewer $(gsutil ls)
- أنشئ عنوان URL يمكنك استخدامه لاختبار مثيل Cloud Shell المخصّص المنشور:
echo "https://ssh.cloud.google.com/cloudshell/editor?cloudshell_image=gcr.io/$GOOGLE_CLOUD_PROJECT/custom-cloud-shell"
- انسخ عنوان URL الناتج والصقه في علامة تبويب متصفّح جديدة، وسيتم فتح مثيل Cloud Shell المخصّص. لاحظ كيف تظهر بانرات عند الوصول إلى التطبيق الفوري، تشير إلى أنّك تستخدم وضع "الملف الشخصي المؤقت الكامل":

- اختبِر الصورة مرة أخرى من خلال تنفيذ الأمر hey
hey
- بعد الانتهاء،
exitمثيل Cloud Shell المؤقت، ثم ارجع إلى علامة التبويب التي تم فيها فتح Cloud Shell العادي، وانقر على إعادة الربط.
الوصول إلى Cloud Shell عن بُعد باستخدام بروتوكول SSH
يمكنك أيضًا استخدام ميزات Cloud Shell عن بُعد من جهاز الكمبيوتر المحلي. يتضمّن ذلك عادةً حالتين مختلفتين للاستخدام:
- استخدام بروتوكول النقل الآمن (SSH) للوصول إلى جهاز Cloud Shell من وحدة التحكم المحلية
- تثبيت دليل
$HOMEالبعيد في Cloud Shell على جهازك
لإجراء ذلك، يجب أن تكون حزمة تطوير البرامج (SDK) من Google Cloud مثبَّتة على جهازك. عليك أيضًا ضبطه باستخدام رقم تعريف مشروعك وبيانات الاعتماد المحدّدة التي تستخدمها.
نفِّذ الخطوات التالية من محاكي طرفي يعمل على جهازك المحلي:
- اضبط رقم تعريف مشروع Google Cloud Platform وسجِّل الدخول باستخدام بيانات الاعتماد المتوافقة مع مؤسسة Cloud التي يتوفّر فيها Cloud Shell.
gcloud config set project <your project id>
gcloud auth login
- استخدِم بروتوكول SSH للوصول إلى جهاز Cloud Shell البعيد:
gcloud cloud-shell ssh --authorize-session
ستكون الآن في Cloud Shell، ولكن باستخدام ميزات ومواصفات محاكي Terminal المحلي. إذا كان التطبيق الذي تستخدمه يتيح استخدام tmux، يمكنك الاستفادة من عمليات دمج إضافية للحصول على تجربة أفضل عن بُعد.
ربط الدليل الرئيسي في Cloud Shell بجهازك
مع أنّ إمكانية استخدام بروتوكول النقل الآمن (SSH) للوصول إلى مثيل Cloud Shell البعيد هي ميزة رائعة، إلا أنّه من الأفضل أن تتمكّن من استخدام بيئة التطوير المتكاملة المحلية (IDE) مع إمكانية الوصول إلى دليل $HOME البعيد في Cloud Shell. بهذه الطريقة، يمكنك الجمع بين إذن الوصول إلى بروتوكول النقل الآمن (SSH) الموضّح سابقًا وإمكانية تعديل الرمز البرمجي عن بُعد محليًا.
لإجراء ذلك، أنشئ أولاً نقطة تثبيت من جهازك المحلي:
mkdir $HOME/cloudshell
هذا هو الدليل الذي سيتم تركيب Cloud Shell فيه. الآن، لتثبيته، تأكَّد من بدء مثيل Cloud Shell، ثم اكتب في وحدة التحكّم المحلية:
$(gcloud cloud-shell get-mount-command $HOME/cloudshell)
cd $HOME/cloudshell
سيؤدي ذلك إلى الحصول على أمر الربط الذي عليك إصداره لربط Cloud Shell محليًا، ثم ربطه. سيظهر لك محتوى الدليل الرئيسي في Cloud Shell مثبّتًا على جهازك المحلي.
يمكنك الآن فتح بيئة تطوير متكاملة (IDE) مثل VSCode على جهازك وفتح مساحة عمل بعيدة في السحابة الإلكترونية. في الوقت نفسه، من خلال استخدام إذن الوصول إلى Cloud Shell عبر بروتوكول النقل الآمن (SSH)، يمكنك فتح لوحة Terminal داخل IDE لدمج وحدة طرفية عن بُعد في بيئة التطوير المتكاملة المحلية.
5- استخدام Cloud Code
Cloud Code هي إضافة طوّرتها Google وتتيح للمطوّرين العمل بفعالية أكبر باستخدام الأدوات المستندة إلى السحابة الإلكترونية. تتوفّر هذه الأداة في العديد من بيئات التطوير المتكاملة وأدوات تعديل الرموز، مثل منتجات VSCode وJetbrains، وهي مدمجة تلقائيًا في "محرِّر Cloud Shell" لتوفير الراحة لك. يتضمّن Cloud Code العديد من الميزات المناسبة للمطوّرين والتي ستتدرب عليها في الخطوات التالية.
تحديد موقع Cloud Code في "محرِّر Cloud Shell"
استخدام أزرار الوصول السريع
ابحث عن الأزرار الأربعة التالية المعروضة في اللوحة اليمنى من المحرِّر:

تتيح عناصر القائمة هذه الوصول إلى خدمات GCP وإعدادها بسهولة مباشرةً من "محرّر Cloud Shell".
في هذا التمرين العملي، ستركز على مجموعات Kubernetes.
استخدام شريط الحالة
هناك جزءان إضافيان من Cloud Cloud يتم عرضهما من خلال واجهة مستخدم "محرّر Cloud Shell" وهما مهمّان. يمكنك الاطّلاع على كليهما في الشريط السفلي في "المحرّر":

- <> Cloud Code: سيؤدي النقر هنا إلى عرض قائمة الإجراءات السريعة التي ستستخدمها خلال هذا الدليل التعليمي:

- التحكّم في minikube: يتيح لك ذلك التحكّم في محاكي Kubernetes المحلي، minikube، من خلال إجراءات أساسية مثل بدء المجموعة أو إيقافها.
إنشاء مثيل Minikube
أنشئ مثيلاً من Minikube الآن بالنقر على الزر.

إنشاء مجموعة GKE باستخدام Cloud Code
- انقر على الرمز
Cloud Code - Kubernetes Clusters(
) في أعلى يمين الشاشة. سيظهر جزء جديد على يمين الشاشة باسم رمز CLOUD - KUBERNETES: المجموعات. - انقر على الزر + بجانب رمز السحابة الإلكترونية - Kubernetes: المجموعات واختَر Google Kubernetes Engine (يُرجى العِلم أنّه يمكنك أيضًا اختيار خيارات أخرى مثل Minikube الذي تم إعداده من قبل):

- انقر على إنشاء مجموعة جديدة في GKE. سيؤدي هذا الخيار إلى تحميل جزء جديد على اليسار يمكنك فيه إدخال معلومات إضافية لإنشاء "مجموعة تطوير" بسرعة. اتّبِع التعليمات الواردة في اللوحة وأدخِل المعلومات التالية:
- اختيار "القيادة الذاتية"
- اختَر منطقتك (europe-west-1)
- امنح مجموعتك اسم "dev".
- انقر على الزر إنشاء مجموعة. سيؤدي ذلك إلى إنشاء مجموعة Autopilot جديدة.
قد تستغرق عملية إنشاء المجموعة مدة تصل إلى 5 دقائق. أثناء إنشاء المجموعة، يمكنك استكشاف المزيد من "لوحة Kubernetes" في Cloud Code.
استكشاف لوحة Kubernetes في Cloud Code
لقد أنشأت سابقًا مجموعة Minikube. عندما يصبح هذا المجمّع جاهزًا، سيظهر في لوحة Kubernetes في Cloud Code بالاسم الذي أطلقته عليه، minikube:

ستظهر المجموعة على أنّها "نشطة" في واجهة المستخدم. تتم مزامنة هذا الإعداد مع سياق kubernetes الحالي في سطر الأوامر. .
يمكنك الاطّلاع على ما يلي في لوحة Kubernetes في Cloud Code:
- ملف KubeConfig التلقائي: يقرأ Cloud Code الملف ~/
.kube/configالخاص بالمستخدم ويستخدمه للاتصال بمجموعات Kubernetes التي تم إعدادها هناك، ما يتيح لك التنقّل فيها بسهولة. يمكنك تعديل ملف Kubeconfig من خلال تمرير مؤشر الماوس فوق السطرDefault Kubeconfigثم النقر على المربّع الذي يحتوي على السهم المتّجه للخارج بجانبه إذا أردت ذلك. - عرض قابل للتصفّح لمختلف عناصر المجموعات المسجّلة: في هذه الحالة، يمكنك الاطّلاع على مجموعة
minikubeMinikube التي أنشأتها من قبل، مع سياقاتها ومساحات أسمائها وعُقدها. يمكنك المتابعة وتوسيع بعض عُقد الشجرة. لن تكون هناك أي وحدات حتى الآن لأنّك لم تنشر أي تطبيق.
بعد إعداد مجموعة GKE الجديدة وتشغيلها، ستظهر في اللوحة اليمنى إلى جانب مجموعة minikube Minikube. يُرجى العِلم أنّه يمكنك النقر بزر الماوس الأيمن على أي من المجموعات وجعلها "نشطة" بمعنى اختيار المجموعة لأي من إجراءات Cloud Code التي قد تبدأها:

6. تهانينا!
تهانينا، لقد أكملت درس البرمجة.
المواضيع التي تناولناها
- التنقّل والتعرّف على الميزات الرئيسية في Cloud Shell
- التدرّب على أنماط استخدام مختلفة في Cloud Shell
- تخصيص بيئة Cloud Shell للاستخدام المتقدّم
- التعرّف على خيارات وميزات Cloud Code
- راجعتُ تفاصيل تطبيقات Cloud Code for Kubernetes
- استخدام محاكيات محلية مثل Minikube