हमारा सुझाव है कि ज़्यादातर मामलों में, Firebase कंसोल से ऑटोमैटिक रोलआउट या मैन्युअल तरीके से ट्रिगर किए गए रोलआउट का इस्तेमाल करें. हालांकि, आपको अपनी ज़रूरत के हिसाब से तैयार किए गए डिप्लॉयमेंट फ़्लो की ज़रूरत पड़ सकती है. App Hosting को पसंद के मुताबिक डिप्लॉय करने के कई विकल्प हैं.
Firebase CLI की मदद से, सोर्स से डिप्लॉय करना
Firebase CLI की मदद से, अपने ऐप्लिकेशन के सोर्स कोड और कॉन्फ़िगरेशन को सीधे अपनी लोकल मशीन से Firebase पर पुश किया जा सकता है. अगर आपके पास अन्य Firebase डिप्लॉयमेंट (जैसे कि सुरक्षा से जुड़े नियम या फ़ंक्शन) हैं और आपको एक ही सीएलआई कमांड के साथ अपना वेब ऐप्लिकेशन और बैकएंड सेवाएं डिप्लॉय करनी हैं, तो यह तरीका आपके लिए फ़ायदेमंद है.
डेटा डिप्लॉय करने पर, App Hosting आपके सोर्स कोड को Google Cloud Storage बकेट में अपलोड करता है. साथ ही, Cloud Build में आपके फ़्रेमवर्क की बिल्ड कमांड चलाता है. इसके बाद, फ़ाइनल आर्टफ़ैक्ट को Cloud Run और Cloud CDN पर डिप्लॉय करता है. App Hosting, लोकल सोर्स डिप्लॉयमेंट के लिए GitHub डिप्लॉयमेंट की तरह ही बिल्ड प्रोसेस का इस्तेमाल करता है.
लोकल सोर्स से ऐप्लिकेशन को डिप्लॉय करने के लिए:
- अपने लोकल प्रोजेक्ट डायरेक्ट्री में
firebase init apphosting
चलाएं. - प्रॉम्प्ट मिलने पर, किसी मौजूदा प्रोजेक्ट का इस्तेमाल करें को चुनें. इसके बाद, चुना गया Firebase प्रोजेक्ट चुनें.
डिप्लॉय करने के लिए, नया या मौजूदा बैकएंड चुनें. इस चरण में, आपकी स्थानीय डायरेक्ट्री के लिए ऐप्लिकेशन होस्टिंग डिप्लॉयमेंट सेट अप किए जाते हैं. इससे आपको वह जानकारी देने के लिए कहा जाता है जो App Hosting को आपके ऐप्लिकेशन को सही तरीके से डिप्लॉय करने के लिए चाहिए:
- जिस बैकएंड पर डिप्लॉय करना है उसका आईडी
- डप्लॉय करने के लिए क्षेत्र (अगर नया बैकएंड बनाया जा रहा है)
- ऐप्लिकेशन कोड की रूट डायरेक्ट्री का पाथ
App Hosting, आपकी डिप्लॉयमेंट सेटिंग को
firebase.json
में सेव करता है. अगर यह फ़ाइल आपके लोकल प्रोजेक्ट में मौजूद नहीं है, तो यह उसे बनाता है. शुरुआती प्रोसेस पूरी होने के बाद,firebase deploy
कमांड चलाकर, सोर्स कोड को App Hosting पर डिप्लॉय किया जा सकता है.
अगर आपने कई बैकएंड के लिए लोकल सोर्स डिप्लॉयमेंट सेट अप किए हैं (इसका मतलब है कि firebase.json
में कई backendId
एंट्री हैं), तो 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 Studio से Firebase App Hosting पर पब्लिश या डिप्लॉय किया जा सकता है. App Hosting की मदद से ऐप्लिकेशन पब्लिश करना लेख पढ़ें.