يستخدم Firebase App Hosting Cloud Build لتحويل رمز المصدر الخاص بالتطبيق إلى تنسيق حاويات مناسب للنشر على Cloud Run.
تعمل عملية الإنشاء من خلال المراحل الرئيسية التالية:
الاستيراد: يجمع رمز المصدر لتطبيقك وإعداداته.
إنشاء: تُثبِّت هذه العملية التبعيات وتُنشئ تطبيقك.
التسليم: يُنهي عملية إنشاء حاوية Cloud Run العلنية.
تتوافق هذه الخطوات الثلاث مباشرةً مع خطوات الإنشاء 1 و2 و3 كما هو موضّح في Cloud Build في Google Cloud Console:
مرحلة نقل البيانات
تتحمّل هذه المرحلة مسؤولية معالجة منطق ما قبل الإنشاء. وهي تقرأ متغيّرات البيئة التي يحدّدها المستخدم وتزيل أي محتوى غير مرغوب فيه ثم تُجري تعديلات عليها. ويزيل هذا الإجراء أيضًا أي إشارة إلى
أسرار محدّدة في ملف apphosting.yaml
ويثبتها.
مرحلة الإنشاء
هذا هو جوهر عملية الإنشاء، وهو مسؤول عن إنشاء ملف bundle.yaml
يحدِّد إعدادات الإنشاء وملف ملف ملف
حاوية قابل للتشغيل.
ويستخدم حِزم الإنشاء المخصّصة للتطبيقات السحابية الأصلية
لتعبئة
التطبيق بكفاءة. يمكنك العثور على مزيد من المعلومات حول bundle.yaml
ملف
على github.
تتحمّل حِزم الإنشاء مسؤولية تحويل رمز تطبيقك المصدر إلى صور حاويات جاهزة للإنتاج. Firebase App Hosting تربط معًا عدة حِزم إنشاء لإكمال عملية الإنشاء:
- Runtime Buildpack: يضمن تضمين جميع المكوّنات اللازمة لتشغيل تطبيق أساسي Node.js وتثبيت التبعيات.
- حزمة إنشاء Monorepo: لضبط حِزم الإنشاء اللاحقة من أجل التعامل مع سيناريوهات مختلفة لنظام Monorepo
حزمة إنشاء إطار العمل: تعمل على تثبيت محوِّل إطار العمل الصحيح (مثل Angular أو Next.js) وإعداد حِزم الإنشاء اللاحقة.
تتحمّل محوِّلات الإطارات المرجعية مسؤولية تنفيذ أمر الإنشاء المخصّص للإصدار العلني وتعيين أي قيم ذات صلة بالإعدادات الخاصة بالإطار المرجعي إلى تنسيق عادي يمكن لـ App Hosting قراءته.
حزمة Package Manager Buildpack: تُنفِّذ عملية تثبيت الملحقات وي تُنشئ التطبيق باستخدام npm أو yarn أو pnpm.
حزمة إنشاء الحِزم الناتجة: تحدِّد أمر التشغيل وتُعدّ الحِزمة الناتجة للتنفيذ.
مرحلة النقل
تعمل هذه المرحلة النهائية على تجميع جميع المعلومات المستخرَجة من رمز المصدر للتطبيق بالإضافة إلى صورة حاوية الإنشاء وإرسالها إلى App Hosting الخلفية. بعد ذلك، تستخدِم الخلفية في App Hosting هذه المعلومات لإعداد Cloud Run بالإعدادات المناسبة.
مزيد من المعلومات
عملية إنشاء App Hosting بأكملها مفتوحة المصدر.
- رمز حزمة الإنشاء في مستودع حِزم الإنشاء في Google Cloud
- يمكن العثور على رمز محوِّلات إطار العمل في مستودع firebase-framework-tools.
- مزيد من المعلومات عن حِزم الإنشاء المتوافقة مع تطبيقات السحابة الإلكترونية وCloud Build