تم تصميم Firebase App Hosting خصيصًا لدعم تطوير تطبيقات الويب الحديثة التي تركّز على إطار العمل. يمكنك استخدام هذه الصفحة كمرجع للأدوات و الأُطر التي تتوافق معها App Hosting مباشرةً، بالإضافة إلى نقطة بدء للتعرّف على الأُطر والأدوات ذات الصلة.
أُطر عمل الويب وApp Hosting
يوفّر App Hosting مستويَين عامَّين من الدعم لإطارات عمل الويب الحديثة: دعم الإنشاء والنشر المُعدّ مسبقًا، والدعم على مستوى المنتدى من خلال المساهمات في البرامج مفتوحة المصدر التي تتوافق مع مواصفات حِزمة الإخراج. في كلا القصتين، يتيح عنصر محوِّل إطار العمل دمج إطار عمل معيّن مع App Hosting.
الأطر التي تتيح إنشاء التطبيقات ونشرها مسبقًا
من خلال ميزة الإعداد المُسبَق لعمليتي الإنشاء والنشر، تُحدِّد Firebase الإطار المرجعي الذي تستخدمه من خلال فحص ملف package-lock.json
أو ملف قفل
آخر، كما تحسِّن عمليات الإنشاء والنشر لتطبيقك. تلتزم Google باستمرار توفير الدعم لهذه الإطارات المرجعية، ويمكن لفريق دعم Firebase قبول تقارير المشاكل وطلبات الميزات.
يتم توفير هذا المستوى من الدعم لما يلي:
- Next.js
- Angular
اطّلِع على جداول الدعم لمعرفة تفاصيل عن إصدارات معيّنة ومستويات الدعم.
إذا حاولت نشر تطبيق Node.js لا يتضمّن ملف قفل، لن يتمكّن App Hosting
من إنشاء تطبيقك وتشغيله. يمكنك إنشاء package-lock.json
من خلال
تشغيل npm install
في الدليل الجذر.
الأطر التي يدعمها المنتدى
بالإضافة إلى Next.js وAngular، يتوافق App Hosting أيضًا مع أي إطار عمل ويب يمكنه توفير ناتج إنشاء يتطابق مع مواصفات حِزمة الإخراج. يمكن لمؤلفي الإطارات الاستفادة من مواصفات حِزمة الإخراج لمحاولة ضمان توافق إطار العمل مع App Hosting. على سبيل المثال، يتوافق إطار عمل Nuxt الرائج مع فريق Nitro الذي أنشأ محوِّل Firebase لتمكين نشر تطبيقات Nuxt على App Hosting.
إذا أردت الاطّلاع على إطارات عمل إضافية متوافقة مع App Hosting، يمكنك إنشاء محوِّل إطار عمل أو التواصل مع القائمين على إطار العمل لتحويل نتائج التصميم إلى تنسيق App Hosting. إنّ محوِّلَي Next.js وAngular هما مثالان مرجعيّان جيدان لأيّ شخص ينشئ محوِّلاً.
يمكن العثور على معلومات عن الأطر المتوافقة مع المنتدى على Firebase Open Source. يجب توجيه المشاكل وطلبات الميزات المتعلقة بالإطارات الأساسية التي يدعمها المنتدى إلى منتدى المصادر المفتوحة أو إلى مؤلفي الإطارات الأساسية. في بعض الحالات، قد تتمكّن Google من تقديم المساعدة، ولكن المنتدى هو خط المساعدة الأول لهذه المحوِّلات.
App Hosting محوِّلات الإطارات
في App Hosting، يتم توفير دعم لكل من محوِّلات إطارات العمل المُعدّة مسبقًا والمتوافقة مع المنتدى. App Hosting تلعب محوِّلات الإطارَين دورَين رئيسيَّين:
- وهي تُحلِّل رمز المصدر وأي ملفات ضبط خاصة بالإطار (مثل
next.config.js
) وتُنشئ حِزمة ناتجة يمكن معالجتها من قِبل باقي البنية الأساسية لـ App Hosting. - وتعمل هذه الأدوات على تنفيذ أمر إنشاء تطبيقك لإنشاء مواد عرض ثابتة وإنشاء إصدار محسّن من تطبيقك للإصدار العلني.
تُنشئ محوِّلات إطار العمل تطبيقك المستنِد إلى Node.js باستخدام npm run build
، وهي تعمل بشكل أفضل
مع نصوص الإنشاء التلقائية لكل إطار عمل: next build
لتطبيق Next.js و
ng build
لتطبيق Angular. سيحاول App Hosting إنشاء إصدارات باستخدام تعليمات برمجية مخصّصة لإنشاء الإصدارات، ولكن لا يمكنه ضمان النجاح بشكل موثوق. يمكنك
تجاوز النصوص البرمجية لإنشاء التطبيق وتشغيله
في apphosting.yaml
.
يتوفّر مصدر محوّلات Next.js وAngular في firebase-framework-tools.
أوقات التشغيل لـ App Hosting
بعد أن ينشئ فريق App Hosting التطبيق ويطرحه، يتم تشغيل تطبيق Node.js في مراجعة Cloud Run. وبناءً على ذلك، يجب أن يكون إصدار وقت التشغيل لتطبيقك ضمن النطاق المتوافق مع Cloud Run والنطاق المتوافق مع إطار عمل الويب الذي اخترته. بالنسبة إلى الدعم المُعدّ مسبقًا لإطارَي عمل Angular وNext.js، يعني ذلك أنّه يتمّ استخدام إصدارات Node.js التالية:
- الإصدار 13.5.x من Next.js والإصدارات الأحدث
- Angular 18.2.x والإصدارات الأحدث
- الإصدار 18 من Node.js والإصدارات الأحدث
لا يوفّر App Hosting تلقائيًا دعمًا نشطًا لإصدارات الإطار العمل المتوفّرة حديثًا. سيتم اعتبار الإصدارات الأحدث من الإصدار "النشط" المُحدَّد حاليًا في حالة "الإصدار التجريبي" إلى أن يتم وضع علامة "نشط" عليه رسميًا لنظام التشغيل App Hosting.
App Hosting توفّر قناة الدعم الطويل الأمد (LTS) لأحدث إصدار ثانوي من الإصدار الرئيسي لمدة عام واحد من فترة الدعم النشط، شرط أن تتم تحديثه باستمرار إلى أحدث إصدارات الرموز الإصلاحية ضمن هذا الإصدار الثانوي. يمكنك الرجوع إلى الجداول التالية للاطّلاع على تفاصيل Next.js وAngular.
جدول دعم Next.js
الإصدار | الحالة | الإيقاف النهائي |
---|---|---|
13.5.x | lts | 2026-10-9 |
14.2.x | lts | 2026-10-9 |
15.0.x | نشطة | ليس قبل 9-10-2025 |
15.1.x | نشطة | ليس قبل 9-10-2025 |
15.2.x | نشطة | - |
جدول دعم Angular
الإصدار | الحالة | الإيقاف النهائي |
---|---|---|
18.2.x | lts | 2026-10-9 |
19.0.x | نشطة | ليس قبل 9-10-2025 |
19.1.x | نشطة | ليس قبل 9-10-2025 |
19.2.x | نشطة | - |
مديرو الحِزم
يستخدم App Hosting حِزم Cloud Native Buildpacks لتنفيذ تثبيت الملحقات وإنشاء التطبيق باستخدام npm أو yarn أو pnpm. لا يمكن استخدام أدوات إدارة الحِزم الأخرى، مثل JSR.
NPM
- NPM هو مدير الحِزم التلقائي.
- يتمّ تقليم التبعيات غير المخصّصة للإصدار العلني بعد نجاح عملية الإنشاء.
- يمكنك تحديد قسم إصدار npm باستخدام حقل
engines.npm
في ملفpackage.json
.
خيط غزل
- يتم استخدام Yarn بدلاً من ذلك عند تضمين ملف
yarn.lock
في مشروعك. - يمكنك تحديد إصدار الخيط المطلوب استخدامه في حقل
engines.yarn
أوpackageManager
في ملفpackage.json
. - يتوافق App Hosting مع وضع Yarn2 PnP.
Pnpm
- يتم استخدام Pnpm بدلاً من ذلك عند تضمين ملف
pnpm-lock.yaml
في مشروعك. - يمكنك تحديد إصدار من pnpm في حقل
engines.pnpm
أوpackageManager
في ملفpackage.json
. - للحصول على مثال عملي، اطّلِع على sample-node-pnpm. Flood It!
المستودعات الأحادية لنظام التشغيل App Hosting
يتيح App Hosting استخدام التطبيقات المستندة إلى Nx. اطّلِع على استخدام مستودعات مونو مع App Hosting للحصول على إرشادات تفصيلية.
تتوفّر إصدارات Nx التالية:
الإصدار | الحالة | الإيقاف النهائي |
---|---|---|
19.5.x | صيانة | 2025-10-9 |
19.6.x | صيانة | 2025-10-9 |
19.7.x | صيانة | 2025-10-9 |
19.8.x | lts | 2026-10-9 |
20.0.x | نشطة | ليس قبل 9-10-2025 |
20.1.x | نشطة | ليس قبل 9-10-2025 |
20.2.x | نشطة | ليس قبل 9-10-2025 |
20.3.x | نشطة | ليس قبل 9-10-2025 |
20.4.x | نشطة | ليس قبل 9-10-2025 |
20.5.x | نشطة | ليس قبل 9-10-2025 |
20.6.x | نشطة | ليس قبل 9-10-2025 |
20.7.x | نشطة | — |
إذا كنت بحاجة إلى دعم لأنواع أخرى من مساحات عمل المستودعات الموحدة، يُرجى إعلامنا على Firebase UserVoice.