ऐप्लिकेशन होस्टिंग के बारे में जानें और इसके काम करने का तरीका जानें

ऐप्लिकेशन होस्टिंग की मदद से, कारोबार के लिए कई बैकग्राउंड टास्क पूरे किए जा सकते हैं. आपके ऐप्लिकेशन का डिप्लॉयमेंट. इस पेज पर उस टास्क फ़्लो के अहम हिस्सों की जानकारी दी गई है, उन पॉइंट के बारे में जानकारी देना जहां आप फ़्लो को अपनी पसंद के मुताबिक बनाना चाहते हैं पर निर्भर करता है.

फ़्रेमवर्क से जुड़ी सहायता

ऐप्लिकेशन होस्टिंग की मदद से, वेब ऐप्लिकेशन के लिए बिल्ड और डिप्लॉयमेंट की सुविधा मिलती है. हालांकि, इसके लिए कॉन्फ़िगरेशन की ज़रूरत नहीं होती इन फ़्रेमवर्क के हिसाब से बनाया गया है:

  • Next.js 13 और उसके बाद के वर्शन
  • ऐंग्युलर 17.2+

ऐप्लिकेशन होस्टिंग की मदद से यह पता लगाया जाता है कि आपकी डेटा स्टोर करने की जगह में package-lock.json फ़ाइल या अन्य लॉक फ़ाइल. अगर आपको वह Node.js ऐप्लिकेशन डिप्लॉय करें जिसमें लॉक फ़ाइल मौजूद नहीं है, तो ऐप्लिकेशन होस्टिंग अपना ऐप्लिकेशन बनाना और चलाना. आप अपनी रूट डायरेक्ट्री में npm install चलाकर package-lock.json बना सकते हैं.

ऐप्लिकेशन होस्टिंग फ़्रेमवर्क अडैप्टर के दो मुख्य काम हैं:

  1. वे आपके सोर्स कोड और किसी खास फ़्रेमवर्क के लिए कॉन्फ़िगर की गई फ़ाइलों (जैसे कि next.config.js) आपके ऐप्लिकेशन के कॉन्फ़िगर किए गए व्यवहार को समझने के लिए.
  2. ये स्टैटिक ऐसेट जनरेट करने और जिसे प्रोडक्शन के लिए आपके ऐप्लिकेशन का ऑप्टिमाइज़ किया गया वर्शन हो.

फ़्रेमवर्क अडैप्टर, npm run build की मदद से आपका Node.js ऐप्लिकेशन बनाता है. यह बेहतर तरीके से काम करता है हर फ़्रेमवर्क के लिए डिफ़ॉल्ट बिल्ड स्क्रिप्ट के साथ: Next.js के लिए next build और Angular के लिए ng build. ऐप्लिकेशन होस्टिंग, कस्टम बिल्ड के साथ बिल्ड करने की कोशिश करेगी कमांड देता है, लेकिन सफलता की गारंटी नहीं दे सकता.

ऐप्लिकेशन होस्टिंग डेटा स्टोर करने की जगह के इंटिग्रेशन के काम करने का तरीका

आपकी GitHub रिपॉज़िटरी और ऐप्लिकेशन होस्टिंग के बीच का अहम कनेक्शन बैकएंड को यह कंपनी मैनेज करती है डेवलपर कनेक्ट, Google Cloud का कनेक्टिविटी प्लैटफ़ॉर्म बाहरी DevOps टूल के लिए उपलब्ध है. ऐप्लिकेशन होस्टिंग बैकएंड बनाने के दौरान, Developer Connect का यूज़र इंटरफ़ेस (यूआई) वर्कफ़्लो, Firebase GitHub ऐप्लिकेशन. इस प्रोसेस में ये मुख्य चरण हैं:

  1. आपने डेवलपर कनेक्ट को सीक्रेट मैनेजर एडमिन भूमिका. इससे सिस्टम, क्रेडेंशियल को "सीक्रेट" के तौर पर सुरक्षित तरीके से सेव करता है इंच Cloud Secret Manager.
  2. आपने Firebase GitHub ऐप्लिकेशन को GitHub को ऐक्सेस करने की अनुमति दी है डेटा स्टोर करने की जगह के लिए.
  3. Developer Connect, GitHub में अनुमति देने वाला टोकन सेव करता है प्रोजेक्ट के सीक्रेट मैनेजर डेटा स्टोर करने की जगह; इस टोकन को न तो बदलें और न ही मिटाएं.

इसके अलावा, App Hosting, एपीआई की मदद से GitHub की जांच करता है, ताकि रोल आउट की जांच करें. इस जांच से, आपको GitHub पर जाएं और किसी भी तरह की गड़बड़ी होने पर डिप्लॉयमेंट की प्रोसेस को डीबग करें.

Firebase और Google की अन्य सेवाओं के साथ इंटिग्रेशन

ऐप्लिकेशन होस्टिंग की मदद से, बिल्ड और रनटाइम, दोनों एनवायरमेंट सेट अप किए जाते हैं. इससे आपको इन कामों में मदद मिलती है Google की मदद से, Firebase एडमिन SDK टूल को शुरू करें ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल. इस तरह, आपका बैकएंड एक-दूसरे से के साथ-साथ अन्य Firebase प्रॉडक्ट के साथ काम करता है.

ऐप्लिकेशन होस्टिंग का बैकएंड सेवा खाता

बिल्ड के दौरान और रनटाइम के दौरान, आपका ऐप्लिकेशन होस्टिंग बैकएंड इससे पुष्टि करता है: सेवा खाते से Google की अन्य सेवाएं. के लिए एक डिफ़ॉल्ट सेवा खाता ये मकसद पहली बार तब बनाए जाते हैं, जब Firebase प्रोजेक्ट:

firebase-app-hosting-compute@PROJECT ID.iam.gserviceaccount.com

यह सेवा खाता डिफ़ॉल्ट रूप से सभी बैकएंड पर लागू होता है. साथ ही, इसमें कम से कम अनुमतियां दी हैं, ताकि आप अपना ऐप्लिकेशन बना सकें, चला सकें, और उसे मॉनिटर कर सकें. इसमें यह भी है इसकी अनुमति एडमिन SDK को ऐप्लिकेशन के डिफ़ॉल्ट क्रेडेंशियल की मदद से प्रमाणित करें. Cloud Firestore से डेटा लोड करने जैसे काम करना. यहां जाएं: Firebase ऐप्लिकेशन होस्टिंग की भूमिकाएं.

अगर आपके ऐप्लिकेशन को बिल्ड के दौरान, Google की अतिरिक्त सेवाओं से इंटरैक्ट करने की ज़रूरत हो समय या चल रहे बैकएंड से, तो आप डिफ़ॉल्ट सेवा खाते को भूमिकाएं जोड़ना. उदाहरण के लिए, अगर आपके ऐप्लिकेशन को Vertex AI की अनुमतियों की ज़रूरत है, तो इन्हें जोड़ने की ज़रूरत पड़ सकती है roles/aiplatform.user या संबंधित भूमिका में हैं.

मुख्य शब्द और परिभाषाएं

  • बैकएंड: मैनेज किए जा रहे ऐसे संसाधनों का कलेक्शन जिन्हें ऐप्लिकेशन होस्टिंग की मदद से मैनेज किया जाता है आपके वेब ऐप्लिकेशन को बनाने और चलाने के लिए बनाता है.
  • रोलआउट: आपके लाइव ऐप्लिकेशन का खास वर्शन, जो git कमिट से जुड़ा होता है.
  • लाइव ब्रांच: GitHub रिपॉज़िटरी की वह ब्रांच जिसे इन कामों के लिए डिप्लॉय किया जाता है आपके लाइव यूआरएल को ब्लॉक कर सकता है. अक्सर, यह वह शाखा होती है जिसमें शाखाएं होती हैं या डेवलपमेंट ब्रांच मर्ज कर दी गई हों.

पहले से मालूम समस्याएं और सीमाएं

ऐप्लिकेशन होस्टिंग की झलक की कुछ सीमाएं हैं:

  • इमेज ऑप्टिमाइज़ेशन की सुविधा अभी उपलब्ध नहीं है.
  • कुछ मामलों में, ऐप्लिकेशन होस्टिंग का बैकएंड दिख सकता है आपके ऐप्लिकेशन के यूआरएल पर Intermittent connection error मैसेज. समस्या ठीक करने से बाद में उपलब्ध कराई जाएगी.
  • कैश-कंट्रोल हेडर में बदलाव किया जाता है, ताकि सीडीएन कैश मेमोरी को 60 सेकंड तक सीमित किया जा सके; में आने वाले समय में, जब ऐप्लिकेशन होस्टिंग में कैश मेमोरी को तेज़ी से पूरी तरह मिटाने की सुविधा होगी लागू करने पर, यह सीमा हटा दी जाएगी.
  • सेट-कुकी हेडर को ऐप्लिकेशन होस्टिंग डेटाप्लेन. समस्या का हल, बाद में उपलब्ध होने वाले वर्शन में उपलब्ध होगा.
  • कैश नहीं की गई स्टैटिक फ़ाइलों को Cloud Run से बाहर रखा जाता है; में बाद में, इन्हें ऐप्लिकेशन होस्टिंग के ऑरिजिन में सेव और दिखाया जाएगा का इस्तेमाल किया जा सकता है.
  • हो सकता है कि ऐप्लिकेशन होस्टिंग की SKU, बैकएंड के इस्तेमाल की जानकारी वाले पेज पर न दिखें Firebase कंसोल. ये प्रॉडक्ट, बाद में रिलीज़ होने वाले वर्शन में उपलब्ध होंगे.
  • Firebase कंसोल रुक-रुककर यह दिखा सकता है कि "बिल्ड नहीं मिला और अमान्य है" बैकएंड बनाने में गड़बड़ी हुई.
  • फ़िलहाल, एक ही प्रोजेक्ट में सभी बैकएंड, GitHub संगठन/खाता शेयर करते हैं. उन्हें उस संगठन/खाते के तहत अलग-अलग डेटा स्टोर करने की जगहों से कनेक्ट किया जा सकता है. अलग-अलग GitHub खातों से कनेक्ट किए गए बैकएंड बनाने के लिए, उन्हें अलग-अलग प्रोजेक्ट में रखा जा सकता है.
  • फ़िलहाल, यह सुविधा सिर्फ़ us-central1 इलाके में उपलब्ध है.