লক্ষ্য স্থাপন

আপনার ফায়ারবেস প্রোজেক্টে ফায়ারবেস রিসোর্সের জন্য সংক্ষিপ্ত-নাম শনাক্তকারী (যেটি আপনি নিজেকে সংজ্ঞায়িত করেন), যেমন অনন্য স্ট্যাটিক অ্যাসেট সহ হোস্টিং সাইট বা রিয়েলটাইম ডেটাবেস দৃষ্টান্তের একটি গ্রুপ যা একই নিরাপত্তা নিয়মগুলি ভাগ করে তার জন্য লক্ষ্য স্থাপন করা হয়

আপনার একাধিক হোস্টিং সাইট , একাধিক ক্লাউড স্টোরেজ বাকেট, বা একাধিক রিয়েলটাইম ডেটাবেস ইনস্ট্যান্স থাকলে লক্ষ্যগুলি স্থাপন করা কার্যকর। লক্ষ্য স্থাপনের সাথে, Firebase CLI আপনার প্রকল্পের একটি নির্দিষ্ট Firebase সংস্থান বা সংস্থানগুলির গ্রুপে সেটিংস স্থাপন করতে পারে, যেমন:

  • আপনার প্রতিটি হোস্টিং সাইটের জন্য হোস্টিং কনফিগারেশন
  • আপনার প্রতিটি হোস্টিং সাইটের জন্য আপনার প্রকল্প ডিরেক্টরি থেকে স্ট্যাটিক সম্পদ
  • একাধিক রিয়েলটাইম ডেটাবেস ইনস্ট্যান্স বা একাধিক ক্লাউড স্টোরেজ বালতি দ্বারা ভাগ করা নিরাপত্তা নিয়ম

একটি স্থাপনার লক্ষ্য সেট আপ করতে:

  1. লক্ষ্যযুক্ত Firebase সংস্থান বা Firebase সংস্থানগুলির গোষ্ঠীতে একটি TARGET_NAME প্রয়োগ করুন
  2. আপনার firebase.json ফাইলে, আপনি যখন প্রতিটি সংস্থান বা সংস্থানগুলির গোষ্ঠীর জন্য সেটিংস কনফিগার করছেন তখন সংশ্লিষ্ট TARGET_NAME উল্লেখ করুন

আপনি যখন Firebase CLI কমান্ডগুলি চালান (যেমন firebase deploy ), Firebase CLI প্রতিটি TARGET_NAME এর সাথে সম্পর্কিত Firebase সংস্থানগুলির সাথে যুক্ত করে। CLI তারপর আপনার ফায়ারবেস প্রজেক্টে প্রতিটি সম্পদের সেটিংসের সাথে যোগাযোগ করে।

আপনার Firebase সংস্থানগুলির জন্য স্থাপনার লক্ষ্য সেট আপ করুন৷

Firebase CLI ব্যবহার করে, একটি Firebase সম্পদ বা Firebase সম্পদের গোষ্ঠীতে একটি TARGET_NAME (ছোট-নাম শনাক্তকারী যা আপনি নিজেকে সংজ্ঞায়িত করেন) প্রয়োগ করুন। Firebase এর জন্য লক্ষ্য স্থাপন সমর্থন করে:

লক্ষ্য স্থাপনের জন্য সেটিংস আপনার প্রকল্প ডিরেক্টরির .firebaserc ফাইলে সংরক্ষণ করা হয়, তাই আপনাকে প্রতি প্রকল্পে একবারে লক্ষ্যমাত্রা স্থাপন করতে হবে।

হোস্টিংয়ের জন্য স্থাপনার লক্ষ্য সেট আপ করুন

একটি স্থাপনার লক্ষ্য তৈরি করতে এবং একটি হোস্টিং সাইটে একটি TARGET_NAME প্রয়োগ করতে, নিম্নলিখিত CLI কমান্ডটি চালান:

firebase target:apply TYPE TARGET_NAME RESOURCE_IDENTIFIER

যেখানে প্যারামিটারগুলি রয়েছে:

  • TYPE — প্রাসঙ্গিক ফায়ারবেস রিসোর্স টাইপ

    • ফায়ারবেস হোস্টিং সাইটগুলির জন্য, hosting ব্যবহার করুন।
  • TARGET_NAME — হোস্টিং সাইটের জন্য একটি অনন্য নাম যা আপনি স্থাপন করছেন

  • RESOURCE_IDENTIFIER — হোস্টিং সাইটের জন্য SITE_ID আপনার ফায়ারবেস প্রকল্পে তালিকাভুক্ত

উদাহরণস্বরূপ, আপনি যদি আপনার Firebase প্রকল্পে দুটি সাইট ( myapp-blog এবং myapp-app ) তৈরি করে থাকেন, তাহলে আপনি নিম্নলিখিত কমান্ডগুলি চালিয়ে প্রতিটি সাইটে একটি অনন্য TARGET_NAME ( blog এবং app , যথাক্রমে) প্রয়োগ করতে পারেন:

firebase target:apply hosting blog myapp-blog
firebase target:apply hosting app myapp-app

ক্লাউড স্টোরেজ বা রিয়েলটাইম ডেটাবেসের জন্য স্থাপনার লক্ষ্য সেট আপ করুন

একটি স্থাপনার লক্ষ্য তৈরি করতে এবং ক্লাউড স্টোরেজ বা রিয়েলটাইম ডেটাবেস সংস্থানগুলির একটি সেটে একটি TARGET_NAME প্রয়োগ করতে, নিম্নলিখিত CLI কমান্ডটি চালান:

firebase target:apply TYPE TARGET_NAME RESOURCE-1_IDENTIFIER RESOURCE-2_IDENTIFIER ...

যেখানে প্যারামিটারগুলি রয়েছে:

  • TYPE — প্রাসঙ্গিক ফায়ারবেস রিসোর্স টাইপ

    • ক্লাউড স্টোরেজ বালতিগুলির জন্য, storage ব্যবহার করুন।
    • রিয়েলটাইম ডেটাবেস উদাহরণের জন্য, database ব্যবহার করুন।
  • TARGET_NAME — সংস্থান বা সংস্থানগুলির গ্রুপের জন্য একটি অনন্য নাম যা নিরাপত্তা নিয়মগুলি ভাগ করে

  • RESOURCE_IDENTIFIERআপনার ফায়ারবেস প্রকল্পে তালিকাভুক্ত সংস্থানগুলির শনাক্তকারী (যেমন স্টোরেজ বাকেটের নাম বা ডাটাবেস ইনস্ট্যান্স আইডি) যেগুলি একই সুরক্ষা নিয়মগুলি ভাগ করে

উদাহরণস্বরূপ, আপনি নিম্নলিখিত কমান্ডটি চালানোর মাধ্যমে তিনটি আঞ্চলিক ক্লাউড স্টোরেজ বালতিগুলির একটি গোষ্ঠীতে 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 সংস্থানগুলির জন্য লক্ষ্য স্থাপন করার পরে, আপনার firebase.json কনফিগারেশন ফাইলে প্রতিটি প্রয়োগকৃত TARGET_NAME উল্লেখ করুন:

  1. প্রতিটি Firebase রিসোর্স TYPE ( hosting , storage , বা database ) এর জন্য কনফিগারেশন অবজেক্টের একটি অ্যারে তৈরি করুন।
  2. অ্যারেতে, target নির্দিষ্ট করুন ( TARGET_NAME ব্যবহার করে) এবং সংশ্লিষ্ট Firebase সংস্থান বা সংস্থানগুলির গ্রুপের জন্য আপনার সেটিংস সংজ্ঞায়িত করুন৷

উপরের উদাহরণগুলি চালিয়ে যাওয়া, যেখানে আপনার ফায়ারবেস প্রকল্পে দুটি হোস্টিং সাইট এবং তিনটি ক্লাউড স্টোরেজ বালতি রয়েছে (যেগুলি একই নিরাপত্তা নিয়মগুলি ভাগ করে), আপনার 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 \
TYPE RESOURCE_IDENTIFIER
লক্ষ্য থেকে একটি সংস্থান সরিয়ে দেয় যেখানে এটি বরাদ্দ করা হয়েছে
firebase target:clear \
TYPE TARGET_NAME
নির্দিষ্ট লক্ষ্য থেকে সমস্ত সংস্থান বা হোস্টিং সাইট সরিয়ে দেয়

target:remove এবং target:clear কমান্ড স্বয়ংক্রিয়ভাবে আপনার প্রোজেক্ট ডিরেক্টরির .firebaserc ফাইলে ডিপ্লোয় টার্গেট সেটিংস আপডেট করে।

স্থাপন করার আগে স্থানীয়ভাবে পরীক্ষা করুন

আপনার প্রজেক্ট ডিরেক্টরির রুট থেকে নিচের যেকোনো কমান্ড চালান।

আদেশ বর্ণনা
firebase emulators:start আপনার প্রোজেক্ট ডিরেক্টরিতে কনফিগার করা সমস্ত সংস্থান অনুকরণ করে
firebase emulators:start \
--only hosting: TARGET_NAME
শুধুমাত্র হোস্টিং বিষয়বস্তু এবং নির্দিষ্ট হোস্টিং সাইটের কনফিগারেশন অনুকরণ করে
firebase emulators:start \
--only storage: TARGET_NAME
নির্দিষ্ট ক্লাউড স্টোরেজ টার্গেটের জন্য শুধুমাত্র নিয়ম ফাইল অনুকরণ করে
firebase emulators:start \
--only database: TARGET_NAME
নির্দিষ্ট রিয়েলটাইম ডেটাবেস টার্গেটের জন্য শুধুমাত্র নিয়ম ফাইল অনুকরণ করে

Firebase স্থানীয় এমুলেটর স্যুট কনফিগার এবং ব্যবহার সম্পর্কে আরও জানুন।

নির্দিষ্ট ফায়ারবেস সংস্থান স্থাপন করুন

আপনার প্রজেক্ট ডিরেক্টরির রুট থেকে নিচের যেকোনো কমান্ড চালান।

আদেশ বর্ণনা
firebase deploy আপনার প্রকল্প ডিরেক্টরিতে সমস্ত স্থাপনযোগ্য সংস্থানগুলির একটি রিলিজ তৈরি করে
firebase deploy \
--only hosting: TARGET_NAME
সাইটের জন্য লাইভ চ্যানেলে শুধুমাত্র হোস্টিং বিষয়বস্তু এবং নির্দিষ্ট হোস্টিং সাইটের কনফিগারেশন স্থাপন করে
firebase hosting:channel:deploy CHANNEL_ID \
--only TARGET_NAME
সাইটের জন্য একটি পূর্বরূপ চ্যানেলে শুধুমাত্র হোস্টিং বিষয়বস্তু এবং নির্দিষ্ট হোস্টিং সাইটের কনফিগারেশন স্থাপন করে
firebase deploy \
--only storage: TARGET_NAME
নির্দিষ্ট ক্লাউড স্টোরেজ টার্গেটের জন্য শুধুমাত্র নিয়ম ফাইল স্থাপন করে
firebase deploy \
--only database: TARGET_NAME
নির্দিষ্ট রিয়েলটাইম ডেটাবেস টার্গেটের জন্য শুধুমাত্র নিয়ম ফাইল স্থাপন করে