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

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

আপনার একাধিক Hosting সাইট , একাধিক Cloud Storage বাকেট, বা একাধিক Realtime Database ইনস্ট্যান্স থাকলে লক্ষ্যগুলি স্থাপন করা কার্যকর। লক্ষ্য স্থাপনের সাথে, Firebase CLI আপনার প্রকল্পের একটি নির্দিষ্ট Firebase সংস্থান বা সংস্থানগুলির গ্রুপে সেটিংস স্থাপন করতে পারে, যেমন:

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

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

  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 ফাইলে সংরক্ষণ করা হয়, তাই আপনাকে প্রতি প্রকল্পে একবারে লক্ষ্যমাত্রা স্থাপন করতে হবে।

Hosting জন্য স্থাপনার লক্ষ্য সেট আপ করুন

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

firebase target:apply TYPE TARGET_NAME RESOURCE_IDENTIFIER

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

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

    • Firebase Hosting সাইটগুলির জন্য, hosting ব্যবহার করুন।
  • TARGET_NAMEHosting সাইটের জন্য একটি অনন্য নাম যা আপনি স্থাপন করছেন

  • RESOURCE_IDENTIFIERHosting সাইটের জন্য 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

Cloud Storage বা Realtime Database জন্য স্থাপনার লক্ষ্য সেট আপ করুন

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

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

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

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

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

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

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

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

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

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

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

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

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

Firebase Local Emulator Suite কনফিগার এবং ব্যবহার সম্পর্কে আরও জানুন।

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

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

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