欢迎参加我们将于 2022 年 10 月 18 日举办的 Firebase 峰会(线上线下同时进行),了解 Firebase 如何帮助您加快应用开发速度、满怀信心地发布应用并在之后需要时轻松地扩大应用规模。立即报名

अपनी साइट के लिए लाइव और पूर्वावलोकन चैनल, रिलीज़ और संस्करण प्रबंधित करें

फायरबेस होस्टिंग, फायरबेस कंसोल और फायरबेस सीएलआई दोनों के माध्यम से आपकी होस्टिंग साइट के चैनल, रिलीज और संस्करणों को प्रबंधित करने के लिए टूलिंग प्रदान करता है।

होस्टिंग इन्फ्रास्ट्रक्चर का अवलोकन

होस्टिंग के बुनियादी ढांचे को समझने से आपको इस पृष्ठ पर वर्णित प्रबंधन विकल्पों को समझने में मदद मिलती है।

प्रत्येक फायरबेस प्रोजेक्ट में प्रोजेक्ट के सभी संसाधनों (डेटाबेस, प्रमाणीकरण, फ़ंक्शन इत्यादि) तक पहुंच के साथ एक डिफ़ॉल्ट होस्टिंग साइट होती है। एक साइट में एक या एक से अधिक चैनल होते हैं, जहां प्रत्येक चैनल एक URL से जुड़ा होता है जो विशिष्ट सामग्री और एक होस्टिंग कॉन्फ़िगरेशन प्रदान करता है।

फायरबेस होस्टिंग पदानुक्रम की एक छवि

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

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

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

चैनल की सेटिंग प्रबंधित करें

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

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

हर बार जब आप किसी चैनल पर परिनियोजित करते हैं (और एक रिलीज़ बनाते हैं), तो होस्टिंग आपके प्रोजेक्ट के होस्टिंग स्टोरेज में पिछले रिलीज़ से जुड़े संस्करण को रखता है। आप अपने प्रोजेक्ट में प्रत्येक चैनल के लिए लाइव और पूर्वावलोकन चैनल दोनों के लिए रिलीज़ की संख्या सेट कर सकते हैं।

  • होस्टिंग पिछली रिलीज़ क्यों रखती है?
    आपके लाइव चैनल के लिए, पिछली रिलीज़ को रखने से आप ज़रूरत पड़ने पर अपनी साइट के पिछले संस्करण में वापस रोल कर सकते हैं। आपके पूर्वावलोकन चैनलों के लिए, रोल बैक अभी तक उपलब्ध नहीं है।

  • रखने के लिए रिलीज़ की संख्या को सीमित क्यों करें?
    यह सुविधा आपके प्रोजेक्ट के होस्टिंग संग्रहण के उपयोग स्तर को नियंत्रित करने में आपकी सहायता कर सकती है, क्योंकि पिछली रिलीज़ की सामग्री इस संग्रहण में रखी जाती है। आप कंसोल में स्टोरेज टैब से अपने होस्टिंग स्टोरेज की निगरानी कर सकते हैं।

  • जब आप रिलीज़ को रखने के लिए सीमित करते हैं तो क्या होता है?
    जब आप रिलीज़ को रखने के लिए एक सीमा निर्धारित करते हैं, तो आपकी निर्धारित सीमा से अधिक किसी भी रिलीज़ की सामग्री को हटाने के लिए शेड्यूल किया जाता है, पहले सबसे पुराने रिलीज़ से शुरू होता है

किसी चैनल के लिए रिलीज़ संग्रहण सीमा निर्धारित करने का तरीका यहां दिया गया है:

  1. फायरबेस कंसोल में, रिलीज स्टोरेज सेटिंग डायलॉग पर पहुंचें:

    • आपके लाइव चैनल के लिए
      अपनी साइट के लिए रिलीज़ इतिहास तालिका में, क्लिक करें, फिर रिलीज़ संग्रहण सेटिंग चुनें।

    • किसी भी पूर्वावलोकन चैनल के लिए
      पूर्वावलोकन चैनल की पंक्ति में, क्लिक करें, फिर चैनल सेटिंग चुनें।

  2. रिलीज़ की संख्या दर्ज करें जिसे आप रखना चाहते हैं, फिर सहेजें पर क्लिक करें।

पूर्वावलोकन चैनल की समाप्ति सेट करें

डिफ़ॉल्‍ट रूप से, एक पूर्वावलोकन चैनल इसकी निर्माण तिथि से 7 दिनों में समाप्त हो जाता है, लेकिन आपकी साइट का लाइव चैनल कभी भी समाप्त नहीं होगा।

जब एक पूर्वावलोकन चैनल की समय सीमा समाप्त हो जाती है, तो चैनल, इसके रिलीज़ और संबद्ध संस्करणों के साथ, 24 घंटों के भीतर हटाने के लिए निर्धारित होता है। संबद्ध पूर्वावलोकन URL भी निष्क्रिय कर दिया गया है। इस संस्करण-विलोपन का एक अपवाद यह है कि यदि कोई संस्करण किसी अन्य रिलीज़ के साथ संबद्ध है (ऐसा होता है, उदाहरण के लिए, यदि आप उसी साइट के भीतर एक चैनल से दूसरे चैनल में किसी संस्करण को क्लोन करते हैं)।

एक चैनल की समाप्ति को नियंत्रित करने के लिए होस्टिंग दो अलग-अलग तरीकों का समर्थन करती है:

  • फायरबेस कंसोल
    पूर्वावलोकन चैनल की पंक्ति में, क्लिक करें, फिर चैनल सेटिंग चुनें। समाप्ति की तारीख और समय दर्ज करें।

  • फायरबेस सीएलआई
    जब आप अपने पूर्वावलोकन चैनल पर परिनियोजित करते हैं, तो --expires DURATION फ़्लैग पास करें, उदाहरण के लिए:

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

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

एक संस्करण को एक चैनल से दूसरे चैनल में क्लोन करें

आप परिनियोजित संस्करण को एक चैनल से दूसरे चैनल पर क्लोन कर सकते हैं। आप लाइव या पूर्वावलोकन चैनलों पर, होस्टिंग साइटों पर, या यहां तक ​​कि फायरबेस परियोजनाओं में भी क्लोन कर सकते हैं।

क्लोन कमांड "टारगेट" चैनल पर भी तैनात होता है ताकि क्लोन की गई होस्टिंग सामग्री और कॉन्फिग स्वचालित रूप से "टारगेट" चैनल के संबद्ध URL पर प्रदर्शित हो।

यह सुविधा संस्करण ट्रैकिंग के लिए उपयोगी है या यदि आप विश्वास चाहते हैं कि आप ठीक उसी सामग्री को परिनियोजित कर रहे हैं जिसे आपने देखा है और/या किसी अन्य चैनल पर परीक्षण किया है। यहाँ कुछ उदाहरण हैं:

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

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

  • अपने "स्टेजिंग" फायरबेस प्रोजेक्ट के चैनल से अपने "प्रोड" फायरबेस प्रोजेक्ट के पूर्वावलोकन चैनल में क्लोन करें

किसी संस्करण को क्लोन करने के लिए, किसी भी निर्देशिका से निम्न आदेश चलाएँ:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

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

  • SOURCE_SITE_ID और TARGET_SITE_ID : ये उन होस्टिंग साइटों की आईडी हैं जिनमें चैनल होते हैं।

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

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

अपनी साइट के पिछले संस्करण में वापस रोल करें

आप अपनी साइट के लाइव चैनल के पिछले संस्करण की सेवा के लिए वापस रोल कर सकते हैं। यह क्रिया उपयोगी है यदि आपकी वर्तमान रिलीज़ में कोई समस्या है और आप अपनी साइट के ज्ञात कार्यशील संस्करण की सेवा के लिए रोल बैक करना चाहते हैं। या हो सकता है कि आपकी साइट ने किसी अवकाश या विशेष कार्यक्रम के लिए अस्थायी सामग्री प्रस्तुत की हो, लेकिन अब आप अपनी "नियमित" सामग्री परोसने के लिए वापस रोल करना चाहते हैं।

वापस रोल करके, आप एक नई रिलीज़ बनाते हैं जो पिछली रिलीज़ की तरह ही सामग्री का एक ही संस्करण प्रस्तुत करती है। आपकी रिलीज़ इतिहास तालिका में, दोनों रिलीज़ समान संस्करण पहचानकर्ता को सूचीबद्ध करेंगे।

यहां बताया गया है कि कैसे वापस रोल करें:

  1. Firebase कंसोल में, अपनी साइट के लिए रिलीज़ इतिहास तालिका में, पिछली रिलीज़ प्रविष्टि पर होवर करें, जिस पर आप वापस रोल करना चाहते हैं।

  2. क्लिक करें, फिर रोल बैक चुनें।

किसी रिलीज़ को मैन्युअल रूप से हटाएं

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

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

किसी रिलीज़ को हटाने का तरीका यहां दिया गया है:

  1. Firebase कंसोल में, अपनी साइट के लिए रिलीज़ इतिहास तालिका में, पिछली रिलीज़ प्रविष्टि पर होवर करें जिसे आप हटाना चाहते हैं।

  2. पर क्लिक करें, फिर डिलीट को चुनें।

पूर्वावलोकन चैनल को मैन्युअल रूप से हटाएं

आप एक पूर्वावलोकन चैनल को हटा सकते हैं, लेकिन आप अपनी साइट के लाइव चैनल को नहीं हटा सकते।

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

एक पूर्वावलोकन चैनल को हटाने के लिए होस्टिंग दो अलग-अलग तरीकों का समर्थन करता है:

  • फायरबेस कंसोल
    पूर्वावलोकन चैनल की पंक्ति में, क्लिक करें, फिर चैनल हटाएं चुनें। हटाने की पुष्टि करें।

  • फायरबेस सीएलआई
    किसी भी निर्देशिका से निम्न आदेश चलाएँ:

    firebase hosting:channel:delete CHANNEL_ID

पूर्वावलोकन चैनलों और क्लोनिंग के लिए सीएलआई आदेश

पूर्वावलोकन चैनलों के लिए आदेश

यदि आपके पास एकाधिक होस्टिंग साइटें हैं, तो पूर्वावलोकन चैनलों के लिए सभी आदेश परिनियोजन लक्ष्यों का समर्थन करते हैं।

आज्ञा विवरण
firebase hosting:channel:create CHANNEL_ID

निर्दिष्ट CHANNEL_ID . का उपयोग करके डिफ़ॉल्ट होस्टिंग साइट में एक नया पूर्वावलोकन चैनल बनाता है

यह आदेश चैनल पर लागू नहीं होता है।

firebase hosting:channel:delete CHANNEL_ID

निर्दिष्ट पूर्वावलोकन चैनल को हटाता है

आप किसी साइट का लाइव चैनल नहीं हटा सकते।

firebase hosting:channel:deploy CHANNEL_ID

आपकी होस्टिंग सामग्री को परिनियोजित करता है और निर्दिष्ट पूर्वावलोकन चैनल पर कॉन्फ़िगर करता है

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

firebase hosting:channel:list डिफ़ॉल्ट होस्टिंग साइट में सभी चैनलों ("लाइव" चैनल सहित) को सूचीबद्ध करता है
firebase hosting:channel:open CHANNEL_ID ब्राउज़र को निर्दिष्ट चैनल के URL पर खोलता है या यदि ब्राउज़र में खोलना संभव नहीं है तो URL लौटाता है

संस्करण क्लोनिंग के लिए आदेश

आज्ञा विवरण
firebase hosting:clone \
SOURCE_SITE_ID : SOURCE_CHANNEL_ID \
TARGET_SITE_ID : TARGET_CHANNEL_ID

निर्दिष्ट "स्रोत" चैनल पर सबसे हाल ही में परिनियोजित संस्करण को निर्दिष्ट "लक्ष्य" चैनल पर क्लोन करता है

यह कमांड निर्दिष्ट "लक्ष्य" चैनल पर भी लागू होता है। यदि "लक्ष्य" चैनल अभी तक मौजूद नहीं है, तो यह आदेश चैनल पर परिनियोजित करने से पहले "लक्ष्य" होस्टिंग साइट में एक नया पूर्वावलोकन चैनल बनाता है।

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

निर्दिष्ट संस्करण को निर्दिष्ट "लक्ष्य" चैनल पर क्लोन करता है

यह कमांड निर्दिष्ट "लक्ष्य" चैनल पर भी लागू होता है। यदि "लक्ष्य" चैनल अभी तक मौजूद नहीं है, तो यह आदेश चैनल पर परिनियोजित करने से पहले "लक्ष्य" होस्टिंग साइट में एक नया पूर्वावलोकन चैनल बनाता है।

आप Firebase कंसोल के होस्टिंग डैशबोर्ड में VERSION_ID पा सकते हैं।