في معظم الأحيان، ننصحك باستخدام عمليات الطرح التلقائية أو عمليات الطرح التي يتم تشغيلها يدويًا من وحدة تحكّم Firebase. ومع ذلك، قد تحتاج إلى استخدام مسار نشر أكثر تخصيصًا. تتضمّن App Hosting خيارات متعدّدة للنشر المخصّص.
النشر من المصدر باستخدام واجهة سطر الأوامر Firebase
تتيح لك واجهة سطر الأوامر (CLI) في Firebase إرسال رمز المصدر وإعدادات تطبيقك مباشرةً من جهازك إلى Firebase. ويكون ذلك مناسبًا إذا كان لديك عمليات نشر أخرى في Firebase (مثل قواعد الأمان أو الدوال) وأردت نشر تطبيق الويب وخدمات الخلفية معًا باستخدام أمر واحد من واجهة سطر الأوامر.
عند النشر، تحمّل App Hosting الرمز المصدر إلى حزمة Google Cloud Storage، وتنفّذ أمر إنشاء إطار العمل في Cloud Build، وتنشر النتائج النهائية إلى Cloud Run وCloud CDN. تستخدم App Hosting عملية الإنشاء نفسها لعمليات نشر المصدر المحلي كما هو الحال في عمليات النشر على GitHub.
لنشر تطبيقك من مصدر محلي، اتّبِع الخطوات التالية:
- نفِّذ الأمر
firebase init apphosting
في دليل مشروعك المحلي. - عند ظهور الطلب، اختَر استخدام مشروع حالي، ثم اختَر مشروع Firebase الذي اخترته.
اختَر إما نظامًا خلفيًا جديدًا أو حاليًا لنشره. وتعمل هذه الخطوة على إعداد عمليات نشر App Hosting لدليلك المحلي، وتطلب منك المعلومات التي تحتاجها App Hosting لنشر تطبيقك بنجاح:
- رقم تعريف الخلفية التي سيتم نشرها
- المنطقة التي سيتم النشر فيها (في حال إنشاء خلفية جديدة)
- مسار الدليل الجذر لرمز التطبيق
يحفظ App Hosting إعدادات النشر المفضّلة في
firebase.json
(يتم إنشاء الملف في مشروعك المحلي إذا لم يكن متوفّرًا). بعد اكتمال عملية الإعداد بنجاح، يمكنك تشغيلfirebase deploy
لنشر الرمز المصدر إلى App Hosting.
إذا كانت لديك عمليات نشر مصدر محلّي تم إعدادها لخوادم خلفية متعددة (ما يعني أنّ هناك إدخالات backendId
متعددة في firebase.json
)، سيتم نشر firebase deploy
على كل خادم من هذه الخوادم الخلفية. للنشر في خادم خلفي معيّن، استخدِم
firebase deploy --only apphosting:backendId
مثال على ملف firebase.json
{
"apphosting": [
{
"backendId": "my-backend",
// rootDir specifies the directory containing the app to deploy, but the entire
// parent directory of firebase.json will be zipped and uploaded to ensure that
// dependencies outside of the app directory will be available at build time.
"rootDir": "./my-app",
"ignore": [
"node_modules",
".git",
"firebase-debug.log",
"firebase-debug.*.log",
"functions",
],
},
]
}
النشر باستخدام Terraform
إذا كنت بحاجة إلى تحكّم أكبر في عملية الإنشاء والبيئة التي تم نشرها، يمكنك النشر باستخدام Terraform. تتيح لك Terraform تحديد موارد App Hosting وإدارتها باستخدام ملفات إعداد تعريفية، كما تتيح لك نشر صورة حاوية مسبقة الإنشاء مباشرةً إلى App Hosting بدلاً من الاعتماد على App Hosting لإنشاء صورة من رمز المصدر.
إذا كنت تستخدم Terraform للمرة الأولى، يمكنك الاطّلاع على كيفية البدء باستخدام Terraform وFirebase. إذا كنت على دراية بـ Terraform، يمكنك البدء باستخدام نماذج ملفات الإعداد وApp Hosting موارد أخرى.
النشر باستخدام Firebase Studio
عند إنشاء تطبيق ويب باستخدام أداة "نماذج التطبيقات الأولية" في Firebase Studio، يمكنك نشره أو نشره على Firebase App Hosting مباشرةً من Firebase Studio. اطّلِع على نشر تطبيقك باستخدام "استضافة التطبيقات".