टारगेट लागू करें, आपके Firebase प्रोजेक्ट में Firebase संसाधनों के लिए, छोटे नाम वाले आइडेंटिफ़ायर होते हैं. इन संसाधनों को आप खुद तय करते हैं. जैसे, यूनीक स्टैटिक ऐसेट वाली होस्टिंग साइट या रीयल टाइम डेटाबेस के ऐसे ग्रुप जिनमें सुरक्षा के एक जैसे नियम होते हैं.
टारगेट लागू करना तब फ़ायदेमंद होता है, जब आपके पास होस्टिंग की एक से ज़्यादा साइटें, क्लाउड स्टोरेज के एक से ज़्यादा बकेट या एक से ज़्यादा रीयल टाइम डेटाबेस इंस्टेंस हों. डिप्लॉय टारगेट के साथ, Firebase सीएलआई आपके प्रोजेक्ट में खास Firebase संसाधन या संसाधनों के ग्रुप पर सेटिंग डिप्लॉय कर सकता है, जैसे:
- आपकी हर होस्टिंग साइट के लिए होस्टिंग कॉन्फ़िगरेशन
- आपकी हर होस्टिंग साइट के लिए, आपकी प्रोजेक्ट डायरेक्ट्री में मौजूद स्टैटिक एसेट
- कई रीयलटाइम डेटाबेस इंस्टेंस या कई 'Cloud Storage बकेट' के ज़रिए शेयर किए जाने वाले सुरक्षा के नियम
डिप्लॉय टारगेट सेट अप करने के लिए:
- टारगेट किए गए Firebase संसाधन या Firebase संसाधनों के ग्रुप पर
TARGET_NAME
लागू करें. - हर रिसॉर्स या रिसॉर्स के ग्रुप की सेटिंग कॉन्फ़िगर करते समय, अपनी
firebase.json
फ़ाइल में उससे जुड़ेTARGET_NAME
का रेफ़रंस दें.
Firebase सीएलआई कमांड (जैसे, firebase deploy
) चलाने पर, Firebase सीएलआई हर TARGET_NAME
को उससे जुड़े Firebase संसाधनों के साथ जोड़ देता है. इसके बाद, सीएलआई आपके Firebase प्रोजेक्ट को हर रिसॉर्स की सेटिंग के बारे में जानकारी देता है.
अपने Firebase संसाधनों के लिए डिप्लॉय टारगेट सेट अप करना
Firebase सीएलआई का इस्तेमाल करके, किसी Firebase संसाधन या Firebase संसाधनों के ग्रुप पर TARGET_NAME
(छोटा नाम वाला आइडेंटिफ़ायर, जिसे आप खुद तय करते हैं) लागू करें.
Firebase इनके लिए डिप्लॉय टारगेट का इस्तेमाल करता है:
- Firebase होस्टिंग साइटें
- Firebase के लिए Cloud Storage स्टोरेज बकेट
- Firebase रीयल टाइम डेटाबेस के इंस्टेंस
डिप्लॉय टारगेट की सेटिंग, आपकी प्रोजेक्ट डायरेक्ट्री की .firebaserc
फ़ाइल में सेव होती हैं. इसलिए, आपको हर प्रोजेक्ट के लिए डिप्लॉयमेंट के टारगेट को सिर्फ़ एक बार सेट अप करना होगा.
होस्टिंग के लिए डिप्लॉयमेंट टारगेट सेट अप करना
डिप्लॉय टारगेट बनाने और होस्टिंग साइट पर TARGET_NAME
लागू करने के लिए, यह सीएलआई कमांड चलाएं:
firebase target:apply TYPE TARGET_NAME RESOURCE_IDENTIFIER
पैरामीटर कहां होते हैं:
TYPE — काम का Firebase संसाधन प्रकार
- Firebase होस्टिंग साइटों के लिए,
hosting
का इस्तेमाल करें.
- Firebase होस्टिंग साइटों के लिए,
TARGET_NAME — उस होस्टिंग साइट का एक यूनीक नाम है जिसे डिप्लॉय किया जा रहा है
RESOURCE_IDENTIFIER — होस्टिंग साइट की
SITE_ID
जैसा कि आपके Firebase प्रोजेक्ट में बताया गया है
उदाहरण के लिए, अगर आपने अपने Firebase प्रोजेक्ट में दो साइटें (myapp-blog
और myapp-app
) बनाई हैं, तो आप इन निर्देशों का पालन करके हर साइट के लिए एक यूनीक TARGET_NAME
(blog
और app
) लागू कर सकते हैं:
firebase target:apply hosting blog myapp-blog
firebase target:apply hosting app myapp-app
Cloud Storage या रीयल टाइम डेटाबेस के लिए डिप्लॉयमेंट टारगेट सेट अप करना
डिप्लॉयमेंट टारगेट बनाने और क्लाउड स्टोरेज या रीयल टाइम डेटाबेस संसाधनों के सेट पर TARGET_NAME
लागू करने के लिए, यहां दिया गया सीएलआई कमांड चलाएं:
firebase target:apply TYPE TARGET_NAME RESOURCE-1_IDENTIFIER RESOURCE-2_IDENTIFIER ...
पैरामीटर कहां होते हैं:
TYPE — काम का Firebase संसाधन प्रकार
- Cloud Storage बकेट के लिए,
storage
का इस्तेमाल करें. - रीयलटाइम डेटाबेस इंस्टेंस के लिए,
database
का इस्तेमाल करें.
- Cloud Storage बकेट के लिए,
TARGET_NAME — सुरक्षा के नियमों को शेयर करने वाले संसाधन या संसाधनों के ग्रुप के लिए यूनीक नाम
RESOURCE_IDENTIFIER — आपके Firebase प्रोजेक्ट में बताए गए संसाधनों (जैसे कि स्टोरेज बकेट के नाम या डेटाबेस इंस्टेंस आईडी) के आइडेंटिफ़ायर, जो सभी के लिए एक जैसे सुरक्षा नियम शेयर करते हैं
उदाहरण के लिए, तीन रीजनल Cloud Storage बकेट (जो सभी एक जैसे सुरक्षा नियम शेयर करते हैं) के ग्रुप में, main
के TARGET_NAME
को लागू करने के लिए, यह निर्देश दिया जा सकता है:
firebase target:apply storage main myproject.appspot.com myproject-eu myproject-ja
ध्यान दें कि myproject.appspot.com
डिफ़ॉल्ट बकेट के लिए आइडेंटिफ़ायर है, जबकि myproject-eu
और myproject-ja
, Firebase प्रोजेक्ट में बनाए गए दो अतिरिक्त बकेट हैं.
टारगेट डिप्लॉय करने के लिए, firebase.json फ़ाइल कॉन्फ़िगर करें
अपने Firebase संसाधनों के लिए डिप्लॉय टारगेट सेट अप करने के बाद, लागू किए गए हर TARGET_NAME
का रेफ़रंस अपनी
firebase.json
कॉन्फ़िगरेशन फ़ाइल में दें:
- हर Firebase संसाधन
TYPE
(hosting
,storage
याdatabase
) के लिए कॉन्फ़िगरेशन ऑब्जेक्ट का कलेक्शन बनाएं. - श्रेणी में,
TARGET_NAME
का इस्तेमाल करकेtarget
तय करें और इससे जुड़े Firebase संसाधन या संसाधनों के ग्रुप के लिए अपनी सेटिंग तय करें.
ऊपर दिए गए उदाहरणों में, जहां आपके Firebase प्रोजेक्ट में दो होस्टिंग साइटें और तीन Cloud Storage बकेट हैं (जो एक जैसे सुरक्षा नियम शेयर करती हैं), आपकी firebase.json
फ़ाइल ऐसी दिखेगी:
{ "hosting": [ { "target": "blog", // "blog" is the applied TARGET_NAME for the Hosting site "myapp-blog" "public": "blog/dist", // contents of this folder are deployed to the site "myapp-blog" // ... }, { "target": "app", // "app" is the applied TARGET_NAME for the Hosting site "myapp-app" "public": "app/dist", // contents of this folder are deployed to the site "myapp-app" // ... "rewrites": [...] // You can define specific Hosting configurations for each site } ] } { "storage": [ { "target": "main", // "main" is the applied TARGET_NAME for the group of Cloud Storage buckets "rules": "storage.main.rules" // the file that contains the shared security rules } ] }
अगर आपके पास अपने संसाधनों के लिए एक से ज़्यादा कॉन्फ़िगरेशन हैं, तो कई डिप्लॉयमेंट टारगेट बनाए जा सकते हैं. साथ ही, हर एक को firebase.json
फ़ाइल में तय किया जा सकता है. firebase deploy
चलाने पर, इससे जुड़े सभी संसाधन एक साथ डिप्लॉय हो जाएंगे.
डिप्लॉय टारगेट मैनेज करें
डिप्लॉय किए गए टारगेट की सेटिंग, आपकी प्रोजेक्ट डायरेक्ट्री की .firebaserc
फ़ाइल में सेव होती हैं. अपनी प्रोजेक्ट डायरेक्ट्री के रूट से, इनमें से किसी भी कमांड को चलाकर, अपने प्रोजेक्ट के डिप्लॉयमेंट टारगेट को मैनेज किया जा सकता है.
आदेश | जानकारी |
---|---|
firebase target
|
यह आपकी मौजूदा प्रोजेक्ट डायरेक्ट्री के लिए डिप्लॉय टारगेट की सूची बनाता है |
firebase target:remove \
|
उस टारगेट से संसाधन हटाता है जिसे उसे असाइन किया गया है |
firebase target:clear \
|
बताए गए टारगेट से सभी रिसॉर्स या होस्टिंग साइट हटाता है |
target:remove
और target:clear
निर्देश, आपकी प्रोजेक्ट डायरेक्ट्री की .firebaserc
फ़ाइल में डिप्लॉयमेंट टारगेट सेटिंग को अपने-आप अपडेट करते हैं.
डिप्लॉय करने से पहले, डिवाइस पर जांच करें
अपनी प्रोजेक्ट डायरेक्ट्री के रूट से, इनमें से कोई भी कमांड चलाएं.
आदेश | जानकारी |
---|---|
firebase emulators:start
|
आपकी प्रोजेक्ट डायरेक्ट्री में कॉन्फ़िगर किए गए सभी संसाधनों को एम्युलेट करें |
firebase emulators:start \ |
सिर्फ़ होस्ट करने वाली साइट के होस्ट किए गए कॉन्टेंट और कॉन्फ़िगरेशन को एम्युलेट करें |
firebase emulators:start \
|
Cloud Storage के तय टारगेट के लिए, सिर्फ़ नियमों वाली फ़ाइल को एम्युलेट करें |
firebase emulators:start \
|
तय किए गए रीयल टाइम डेटाबेस टारगेट के लिए, सिर्फ़ नियम वाली फ़ाइल को एम्युलेट करें |
Firebase लोकल एम्युलेटर सुइट को कॉन्फ़िगर करने और उसका इस्तेमाल करने के बारे में ज़्यादा जानें.
खास Firebase संसाधनों को डिप्लॉय करें
अपनी प्रोजेक्ट डायरेक्ट्री के रूट से, इनमें से कोई भी कमांड चलाएं.
आदेश | जानकारी |
---|---|
firebase deploy
|
यह आपकी प्रोजेक्ट डायरेक्ट्री में डिप्लॉय किए जा सकने वाले सभी संसाधनों की एक रिलीज़ बनाता है |
firebase deploy \
|
सिर्फ़ होस्ट करने वाली साइट के कॉन्टेंट और कॉन्फ़िगरेशन को, साइट के लाइव चैनल पर डिप्लॉय करता है |
firebase hosting:channel:deploy CHANNEL_ID \ |
साइट के झलक चैनल में, सिर्फ़ होस्ट करने वाली साइट के होस्ट किए गए कॉन्टेंट और कॉन्फ़िगरेशन को डिप्लॉय करता है |
firebase deploy \
|
Cloud Storage के तय टारगेट के लिए, सिर्फ़ नियमों वाली फ़ाइल को डिप्लॉय करता है |
firebase deploy \
|
सिर्फ़ खास रीयल टाइम डेटाबेस टारगेट के लिए, नियमों वाली फ़ाइल डिप्लॉय करता है |