تم تصميم 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 | نشطة | ليس قبل 2025-10-9 |
15.1.x | نشطة | ليس قبل 2025-10-9 |
15.2.x | نشطة | - |
جدول دعم Angular
الإصدار | الحالة | الإيقاف النهائي |
---|---|---|
18.2.x | lts | 2026-10-9 |
19.0.x | نشطة | ليس قبل 2025-10-9 |
19.1.x | نشطة | ليس قبل 2025-10-9 |
19.2.x | نشطة | - |
أدوات إدارة الحِزم
تستخدم App Hosting حِزم Cloud Native Buildpacks لتنفيذ عملية تثبيت التبعيات وإنشاء التطبيق باستخدام npm أو yarn أو pnpm. لا تتوافق هذه الأداة مع أدوات إدارة الحِزم الأخرى، مثل JSR.
NPM
- NPM هو مدير الحِزم التلقائي.
- يتم حذف التبعيات غير الإنتاجية بعد اكتمال عملية الإنشاء بنجاح.
- يمكنك تحديد قسم إصدار npm باستخدام الحقل
engines.npm
في ملفpackage.json
.
خيط غزل
- يتم استخدام Yarn بدلاً من ذلك عند تضمين الملف
yarn.lock
في مشروعك. - يمكنك تحديد إصدار Yarn الذي تريد استخدامه في الحقل
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 | نشطة | ليس قبل 2025-10-9 |
20.1.x | نشطة | ليس قبل 2025-10-9 |
20.2.x | نشطة | ليس قبل 2025-10-9 |
20.3.x | نشطة | ليس قبل 2025-10-9 |
20.4.x | نشطة | ليس قبل 2025-10-9 |
20.5.x | نشطة | ليس قبل 2025-10-9 |
20.6.x | نشطة | ليس قبل 2025-10-9 |
20.7.x | نشطة | — |
إذا كنت بحاجة إلى دعم لأنواع أخرى من مساحات عمل المستودع الأحادي، يُرجى إعلامنا بذلك على Firebase UserVoice.