अपनी साइट के लिए चैनल, रिलीज़, और वर्शन लाइव देखें और उनकी झलक देखें

Firebase Hosting, आपकी Hosting साइट के लिए चैनल, रिलीज़, और वर्शन मैनेज करने के लिए, Firebase कंसोल और Firebase सीएलआई, दोनों के ज़रिए टूल उपलब्ध कराता है.

Hosting इन्फ़्रास्ट्रक्चर की खास जानकारी

Hosting इन्फ़्रास्ट्रक्चर को समझने से, आपको इस पेज पर बताए गए मैनेजमेंट के विकल्पों को समझने में मदद मिलती है.

हर Firebase प्रोजेक्ट में डिफ़ॉल्ट Hosting साइट होती है. इसमें प्रोजेक्ट के सभी संसाधनों (डेटाबेस, पुष्टि करने की सुविधा, फ़ंक्शन वगैरह) का ऐक्सेस होता है. किसी साइट में एक या एक से ज़्यादा चैनल होते हैं. हर चैनल, किसी ऐसे यूआरएल से जुड़ा होता है जिस पर खास कॉन्टेंट और Hosting कॉन्फ़िगरेशन दिखता है.

<span class= की एक इमेजFirebase होस्टिंग की हैरारकी" />

हर Hosting साइट का एक "लाइव" चैनल होता है, जो कॉन्टेंट दिखाता है. साथ ही, (1) साइट के Firebase में प्रावधान किए गए सबडोमेन (SITE_ID.web.app और SITE_ID.firebaseapp.com) और (2) कनेक्ट किए गए सभी कस्टम डोमेन पर Hosting कॉन्फ़िगरेशन दिखाता है. इसके अलावा, आपके पास ऐसे "झलक" चैनल बनाने का भी विकल्प है जो कुछ समय के लिए, शेयर किए जा सकने वाले "झलक यूआरएल" (SITE_ID--CHANNEL_ID-RANDOM_HASH.web.app) के तौर पर अपना कॉन्टेंट और कॉन्फ़िगरेशन दिखाते हैं.

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

Firebase प्रोजेक्ट के Hosting डैशबोर्ड पर जाकर, रिलीज़ का इतिहास टेबल में, अपने लाइव चैनल की रिलीज़ का पूरा इतिहास देखा जा सकता है. अगर आपके पास एक से ज़्यादा Hosting साइटें हैं, तो अपनी पसंद की साइट का रिलीज़ का इतिहास देखने के लिए, देखें पर क्लिक करें. अगर आपके पास झलक दिखाने वाले कोई चैनल हैं, तो वे Hosting के डैशबोर्ड पर भी दिखेंगे.

चैनल की सेटिंग मैनेज करना

अपनी साइट के हर चैनल की सेटिंग को कंट्रोल किया जा सकता है. कुछ सेटिंग, जैसे कि चैनल खत्म होने की तारीख, सिर्फ़ झलक वाले चैनलों पर लागू होती हैं.

सेव की जाने वाली रिलीज़ की संख्या सीमित करना

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

  • Hosting, पिछली रिलीज़ क्यों रखता है?
    अपने लाइव चैनल के लिए, पिछली रिलीज़ को सेव रखने से, ज़रूरत पड़ने पर अपनी साइट के पिछले वर्शन पर रोल बैक किया जा सकता है. झलक दिखाने वाले चैनलों के लिए, अभी रोल-बैक की सुविधा उपलब्ध नहीं है.

  • रिलीज़ की संख्या को सीमित क्यों करना चाहिए?
    इस सुविधा की मदद से, अपने प्रोजेक्ट के Hosting स्टोरेज के इस्तेमाल के लेवल को कंट्रोल किया जा सकता है. ऐसा इसलिए, क्योंकि पिछली रिलीज़ का कॉन्टेंट इसी स्टोरेज में रखा जाता है. कंसोल में स्टोरेज टैब में जाकर, Hosting स्टोरेज की निगरानी की जा सकती है.

  • रिलीज़ को सेव रखने के लिए सीमित करने पर क्या होता है?
    रिलीज़ के लिए सेव रखने की सीमा सेट करने पर, सेट की गई सीमा से ज़्यादा रिलीज़ का कॉन्टेंट मिटाने के लिए शेड्यूल किया जाता है. इसमें सबसे पुरानी रिलीज़ से शुरू किया जाता है.

किसी चैनल के लिए, रिलीज़ के लिए स्टोरेज की सीमा सेट करने का तरीका यहां बताया गया है:

  1. Firebase कंसोल में, रिलीज़ के स्टोरेज की सेटिंग वाले डायलॉग बॉक्स को ऐक्सेस करें:

    • अपने लाइव चैनल के लिए
      अपनी साइट के रिलीज़ के इतिहास टेबल में, पर क्लिक करें. इसके बाद, रिलीज़ के लिए स्टोरेज की सेटिंग चुनें.

    • झलक दिखाने वाले किसी भी चैनल के लिए
      झलक दिखाने वाले चैनल की लाइन में, पर क्लिक करें. इसके बाद, चैनल की सेटिंग चुनें.

  2. आपको जिन रिलीज़ को सेव रखना है उनकी संख्या डालें. इसके बाद, सेव करें पर क्लिक करें.

झलक वाले चैनल के खत्म होने की तारीख सेट करना

डिफ़ॉल्ट रूप से, झलक वाले चैनल की समयसीमा, बनाने की तारीख से सात दिन बाद खत्म हो जाती है. हालांकि, आपकी साइट का लाइव चैनल कभी खत्म नहीं होगा.

झलक वाले किसी चैनल की समयसीमा खत्म होने पर, उसे 24 घंटे के अंदर मिटाने के लिए शेड्यूल कर दिया जाता है. साथ ही, उस चैनल को उसकी रिलीज़ और उससे जुड़े वर्शन भी मिटाने के लिए शेड्यूल कर दिया जाता है. इससे जुड़ा झलक वाला यूआरएल भी बंद कर दिया जाता है. वर्शन मिटाने के इस नियम में एक अपवाद है. अगर कोई वर्शन किसी दूसरी रिलीज़ से जुड़ा है, तो उसे नहीं मिटाया जाएगा. उदाहरण के लिए, ऐसा तब होता है, जब किसी वर्शन को एक ही साइट में एक चैनल से दूसरे चैनल पर क्लोन किया जाता है.

Hosting में, किसी चैनल की समयसीमा खत्म होने की सेटिंग को कंट्रोल करने के दो अलग-अलग तरीके इस्तेमाल किए जा सकते हैं:

  • Firebase कंसोल
    झलक वाले चैनल की लाइन में, पर क्लिक करें. इसके बाद, चैनल की सेटिंग चुनें. खत्म होने की तारीख और समय डालें.

  • Firebase सीएलआई
    झलक वाले चैनल पर डिप्लॉय करते समय, --expires DURATION फ़्लैग पास करें. उदाहरण के लिए:

    firebase hosting:channel:deploy new-awesome-feature --expires 7d

    डिप्लॉय करने की तारीख से 30 दिन तक, नीति की समयसीमा खत्म हो सकती है. घंटों के लिए h, दिनों के लिए d, और हफ़्तों के लिए w (उदाहरण के लिए, 12h, 7d, 2w) का इस्तेमाल करें.

किसी वर्शन का क्लोन एक चैनल से दूसरे चैनल पर बनाना

डिप्लॉय किए गए वर्शन को एक चैनल से दूसरे चैनल पर क्लोन किया जा सकता है. आपके पास, लाइव या झलक वाले सभी चैनलों, Hosting साइटों या सभी Firebase प्रोजेक्ट को क्लोन करने का विकल्प है.

क्लोन करने का निर्देश, "टारगेट" चैनल पर भी डिप्लॉय करता है, ताकि क्लोन किया गया Hosting कॉन्टेंट और कॉन्फ़िगरेशन, "टारगेट" चैनल से जुड़े यूआरएल पर अपने-आप दिखे.

यह सुविधा, वर्शन ट्रैकिंग के लिए या यह पक्का करने के लिए काम की है कि आपने बिल्कुल वही कॉन्टेंट डिप्लॉय किया है जिसे आपने किसी दूसरे चैनल पर देखा और/या टेस्ट किया है. यहां कुछ उदाहरण दिए गए हैं:

  • "सवाल-जवाब" वाले प्रीव्यू चैनल से, अपनी साइट के लाइव चैनल पर क्लोन करें (लाइव होने जा रहा है!)

  • अपनी साइट के लाइव चैनल को "डीबग" वाले झलक चैनल पर क्लोन करना (जैसे कि रोलबैक से पहले)

  • अपने "स्टैजिंग" Firebase प्रोजेक्ट के किसी चैनल को, "प्रोडक्शन" Firebase प्रोजेक्ट के किसी झलक वाले चैनल पर क्लोन करना

किसी वर्शन को क्लोन करने के लिए, किसी भी डायरेक्ट्री से यह कमांड चलाएं:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

हर प्लेसहोल्डर को निम्न से बदलें:

  • SOURCE_SITE_ID और TARGET_SITE_ID: ये उन Hosting साइटों के आईडी हैं जिन पर चैनल मौजूद हैं.

    • अपनी डिफ़ॉल्ट Hosting साइट के लिए, अपने Firebase प्रोजेक्ट आईडी का इस्तेमाल करें.
    • आपके पास ऐसी Hosting साइटों के बारे में बताने का विकल्प होता है जो एक ही Firebase प्रोजेक्ट में हों या अलग-अलग Firebase प्रोजेक्ट में हों.
  • SOURCE_CHANNEL_ID और TARGET_CHANNEL_ID: ये चैनलों के आइडेंटिफ़ायर हैं.

    • लाइव चैनल के लिए, चैनल आईडी के तौर पर live का इस्तेमाल करें.
    • अगर तय किया गया "टारगेट" चैनल अब तक मौजूद नहीं है, तो यह कमांड उस पर डिप्लॉय करने से पहले चैनल बनाता है.

अपनी साइट के पिछले वर्शन पर रोल बैक करना

अपनी साइट के लाइव चैनल के पिछले वर्शन को दिखाने के लिए, रोल बैक किया जा सकता है. यह कार्रवाई तब काम की होती है, जब आपकी मौजूदा रिलीज़ में कोई समस्या हो और आपको अपनी साइट के किसी ऐसे वर्शन पर वापस जाना हो जो पहले काम कर रहा था. इसके अलावा, हो सकता है कि आपकी साइट पर छुट्टी या किसी खास इवेंट के लिए कुछ समय के लिए कॉन्टेंट दिखाया गया हो, लेकिन अब आपको "सामान्य" कॉन्टेंट दिखाने के लिए, इसे वापस रोल बैक करना हो.

रोल बैक करके, एक नई रिलीज़ बनाई जाती है. इसमें कॉन्टेंट का वही वर्शन होता है जो पिछली रिलीज़ में दिखाया जाता था. रिलीज़ के इतिहास की टेबल में, दोनों रिलीज़ के लिए एक ही वर्शन आइडेंटिफ़ायर दिखेगा.

बदलावों को पहले जैसा करने का तरीका यहां बताया गया है:

  1. Firebase कंसोल में, अपनी साइट की रिलीज़ का इतिहास टेबल में जाकर, रिलीज़ की उस पिछली एंट्री पर कर्सर घुमाएं जिस पर आपको रोल बैक करना है.

  2. पर क्लिक करें. इसके बाद, रोल बैक करें को चुनें.

रिलीज़ को मैन्युअल तरीके से मिटाना

अपने प्रोजेक्ट के लिए Hosting स्टोरेज खाली करने के लिए, आपको अपने लाइव चैनल से रिलीज़ को मैन्युअल तरीके से मिटाना पड़ सकता है. सिर्फ़ पिछली रिलीज़ मिटाई जा सकती हैं, न कि आपकी लाइव साइट पर फ़िलहाल दिख रही रिलीज़.

किसी रिलीज़ को मिटाने का मतलब है कि उसका कॉन्टेंट मिटाना. इसे 24 घंटे के अंदर मिटा दिया जाता है. रिलीज़ ऑब्जेक्ट को इसलिए रखा जाता है, ताकि आप अब भी उसका मेटाडेटा देख सकें. जैसे, इसे किसने और कब डिप्लॉय किया.

रिलीज़ मिटाने का तरीका यहां बताया गया है:

  1. Firebase कंसोल में, अपनी साइट के लिए रिलीज़ का इतिहास टेबल में, उस पिछली रिलीज़ एंट्री पर कर्सर घुमाएं जिसे आपको मिटाना है.

  2. पर क्लिक करें. इसके बाद, मिटाएं को चुनें.

फ़ाइलों को मैन्युअल तरीके से मिटाना

Firebase Hosting में, डिप्लॉय की गई साइट से चुनी गई फ़ाइलों को मिटाने का मुख्य तरीका यह है कि फ़ाइलों को स्थानीय तौर पर मिटाएं और फिर से डिप्लॉय करें.

झलक वाले चैनल को मैन्युअल तरीके से मिटाना

जिस चैनल की झलक देखनी है उस पर क्लिक करके, अपने चैनलों की झलक देखी जा सकती है. इस व्यू से, किसी खास चैनल से जुड़े नए डिप्लॉयमेंट और रिलीज़ को देखा जा सकता है, मिटाया जा सकता है, और उन्हें पहले जैसा किया जा सकता है. झलक वाले चैनल को मिटाया जा सकता है, लेकिन साइट के लाइव चैनल को नहीं मिटाया जा सकता.

झलक वाले चैनल को मिटाने पर, चैनल के साथ-साथ उसकी रिलीज़ और उससे जुड़े वर्शन को 24 घंटे के अंदर मिटाने के लिए शेड्यूल कर दिया जाता है. इससे जुड़ा झलक वाला यूआरएल भी बंद कर दिया जाता है. वर्शन मिटाने के नियम में एक अपवाद है. अगर कोई वर्शन किसी दूसरी रिलीज़ से जुड़ा है, तो उसे नहीं मिटाया जाएगा. उदाहरण के लिए, ऐसा तब होता है, जब किसी वर्शन को एक ही साइट में एक चैनल से दूसरे चैनल पर क्लोन किया जाता है.

Hosting में, झलक वाले चैनल को मिटाने के दो तरीके इस्तेमाल किए जा सकते हैं:

  • Firebase कंसोल
    झलक वाले चैनल की लाइन में, पर क्लिक करें. इसके बाद, चैनल मिटाएं को चुनें. हटाए जाने की पुष्टि करें.

  • Firebase सीएलआई
    किसी भी डायरेक्ट्री से यह कमांड चलाएं:

    firebase hosting:channel:delete CHANNEL_ID

झलक दिखाने वाले चैनलों और क्लोन करने के लिए सीएलआई कमांड

झलक देखने के लिए चैनलों के लिए निर्देश

अगर आपके पास एक से ज़्यादा Hosting साइटें हैं, तो झलक दिखाने वाले चैनल के लिए सभी निर्देश, टारगेट डिप्लॉय करने की सुविधा देते हैं.

आदेश ब्यौरा
firebase hosting:channel:create CHANNEL_ID

दिए गए CHANNEL_ID का इस्तेमाल करके, डिफ़ॉल्ट Hosting साइट में झलक वाला नया चैनल बनाता है

यह निर्देश चैनल पर डिप्लॉय नहीं होता है.

firebase hosting:channel:delete CHANNEL_ID

प्रीव्यू के लिए चुने गए चैनल को मिटाता है

किसी साइट के लाइव चैनल को नहीं मिटाया जा सकता.

firebase hosting:channel:deploy CHANNEL_ID

आपके Hosting कॉन्टेंट और कॉन्फ़िगरेशन को, बताए गए झलक चैनल पर डिप्लॉय करता है

अगर झलक वाला चैनल अब तक मौजूद नहीं है, तो यह कमांड चैनल पर डिप्लॉय करने से पहले, डिफ़ॉल्ट Hosting साइट में चैनल बनाता है.

firebase hosting:channel:list डिफ़ॉल्ट Hosting साइट पर, सभी चैनलों की सूची दिखती है. इनमें "लाइव" चैनल भी शामिल है
firebase hosting:channel:open CHANNEL_ID ब्राउज़र में दिए गए चैनल के यूआरएल को खोलता है या यूआरएल दिखाता है अगर ब्राउज़र में खोलना मुमकिन नहीं है

वर्शन की क्लोनिंग के लिए निर्देश

आदेश ब्यौरा
firebase hosting:clone \
SOURCE_SITE_ID:SOURCE_CHANNEL_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

चुने गए "सोर्स" चैनल पर हाल ही में डिप्लॉय किए गए वर्शन को, चुने गए "टारगेट" चैनल पर क्लोन करता है

यह कमांड, चुने गए "टारगेट" चैनल पर भी डिप्लॉय होता है. अगर "टारगेट" चैनल अब तक मौजूद नहीं है, तो यह निर्देश चैनल पर डिप्लॉय करने से पहले, "टारगेट" Hosting साइट में एक नया झलक चैनल बनाता है.

firebase hosting:clone \
SOURCE_SITE_ID:@VERSION_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

तय किए गए वर्शन को, दिए गए "टारगेट" चैनल पर क्लोन करता है

यह कमांड, चुने गए "टारगेट" चैनल पर भी डिप्लॉय होता है. अगर "टारगेट" चैनल अब तक मौजूद नहीं है, तो यह निर्देश चैनल पर डिप्लॉय करने से पहले, "टारगेट" Hosting साइट में एक नया झलक चैनल बनाता है.

VERSION_ID को Firebase कंसोल के Hosting डैशबोर्ड में देखा जा सकता है.