অ্যাপ হোস্টিং বিল্ড প্রক্রিয়া

Firebase App Hosting Cloud Build ব্যবহার করে আপনার অ্যাপ্লিকেশন সোর্স কোডকে Cloud Run স্থাপনের জন্য উপযুক্ত একটি কন্টেইনারাইজড ফর্ম্যাটে রূপান্তর করে।

নির্মাণ প্রক্রিয়াটি নিম্নলিখিত মূল ধাপগুলির মধ্য দিয়ে পরিচালিত হয়:

  1. উবুন্টু : ওয়ার্কস্পেস ইনিশিয়ালাইজেশন।

  2. preparer : আপনার অ্যাপ্লিকেশন সোর্স কোড এবং কনফিগারেশন সংগ্রহ করে।

  3. প্রি-বিল্ডপ্যাক : বিল্ডপ্যাক পরিবেশ প্রস্তুত করে।

  4. build : নির্ভরতা ইনস্টল করে এবং আপনার অ্যাপ্লিকেশন তৈরি করে।

  5. প্রকাশক : প্রোডাকশন Cloud Run কন্টেইনার চূড়ান্ত করে।

এই পাঁচটি ধাপ গুগল ক্লাউড কনসোলে Cloud Build প্রদর্শিত বিল্ড ধাপগুলির সাথে সরাসরি মিলে যায়:

ক্লাউড বিল্ড ধাপগুলির একটি Google ক্লাউড কনসোল ভিউয়ের স্ক্রিন ক্যাপচার

কর্মক্ষেত্রের সূচনা

এই ধাপটি উবুন্টু বিল্ড ধাপের সাথে মিলে যায়। এটি বিল্ড ওয়ার্কস্পেস শুরু করে, নিশ্চিত করে যে পরবর্তী বিল্ড ধাপগুলিতে ব্যবহৃত ডিরেক্টরিগুলির জন্য সঠিক ফাইল অনুমতি সেট করা আছে।

প্রস্তুতকারী

এই পর্যায়টি প্রি-বিল্ড লজিক পরিচালনার জন্য দায়ী। এটি ব্যবহারকারী-সংজ্ঞায়িত পরিবেশ ভেরিয়েবলগুলি পড়ে, স্যানিটাইজ করে এবং লেখে। এটি apphosting.yaml ফাইলে নির্দিষ্ট করা যেকোনো গোপন তথ্যকে ডিরেফারেন্স এবং পিন করে।

প্রি-বিল্ডপ্যাক

এই ধাপটি ক্লাউড নেটিভ বিল্ডপ্যাকস জীবনচক্রের জন্য পরিবেশ প্রস্তুত করে। এর মধ্যে একটি শিম চালানো জড়িত যা পূর্ববর্তী পর্যায়ে প্রস্তুত করা কনফিগারেশন এবং পরিবেশের ভেরিয়েবলগুলিকে CNB টুল দ্বারা প্রত্যাশিত ফর্ম্যাটে অনুবাদ করে।

নির্মাণ করুন

এটি বিল্ড প্রক্রিয়ার মূল অংশ, যা একটি রানেবল কন্টেইনার ইমেজ এবং আপনার বিল্ড কনফিগারেশন সংজ্ঞায়িত করে একটি bundle.yaml ফাইল তৈরি করার জন্য দায়ী। এটি অ্যাপ্লিকেশনটিকে দক্ষতার সাথে প্যাকেজ করার জন্য ক্লাউড নেটিভ বিল্ডপ্যাক এবং লাইফসাইকেল ক্রিয়েটর বাইনারি ব্যবহার করে। bundle.yaml ফাইল সম্পর্কে আরও তথ্য github এ পাওয়া যাবে।

বিল্ডপ্যাকগুলি আপনার অ্যাপ্লিকেশন সোর্স কোডকে প্রোডাকশন রেডি কন্টেইনার ইমেজে রূপান্তর করার জন্য দায়ী। Firebase App Hosting বিল্ড প্রক্রিয়াটি সম্পূর্ণ করার জন্য বেশ কয়েকটি বিল্ডপ্যাককে একত্রিত করে:

  1. রানটাইম বিল্ডপ্যাক : একটি মৌলিক Node.js অ্যাপ্লিকেশন চালানোর জন্য প্রয়োজনীয় সমস্ত উপাদান অন্তর্ভুক্ত করা হয়েছে এবং নির্ভরতা ইনস্টল করা হয়েছে তা নিশ্চিত করে।
  2. মনোরেপো বিল্ডপ্যাক : বিভিন্ন মনোরেপো পরিস্থিতি পরিচালনা করার জন্য পরবর্তী বিল্ডপ্যাকগুলি কনফিগার করে।
  3. ফ্রেমওয়ার্ক বিল্ডপ্যাক : সঠিক ফ্রেমওয়ার্ক অ্যাডাপ্টার (যেমন Angular বা Next.js) ইনস্টল করে এবং পরবর্তী বিল্ডপ্যাকগুলি প্রস্তুত করে।

    ফ্রেমওয়ার্ক অ্যাডাপ্টারগুলি প্রোডাকশনাইজড বিল্ড কমান্ড চালানোর এবং App Hosting দ্বারা পঠনযোগ্য একটি স্ট্যান্ডার্ড ফর্ম্যাটে যেকোনো প্রাসঙ্গিক ফ্রেমওয়ার্ক-নির্দিষ্ট কনফিগারেশন মান ম্যাপ করার দায়িত্বে থাকে।

  4. প্যাকেজ ম্যানেজার বিল্ডপ্যাক : নির্ভরতা ইনস্টলেশন কার্যকর করে এবং npm, yarn, অথবা pnpm ব্যবহার করে অ্যাপ তৈরি করে।

  5. আউটপুট বান্ডেল বিল্ডপ্যাক : রান কমান্ড সংজ্ঞায়িত করে এবং কার্যকর করার জন্য আউটপুট বান্ডেল প্রস্তুত করে।

প্রকাশক

এই চূড়ান্ত পর্যায়ে অ্যাপ্লিকেশন সোর্স কোড এবং বিল্ড কন্টেইনার ইমেজ থেকে প্রাপ্ত সমস্ত তথ্য প্যাকেজ করা হয় এবং App Hosting ব্যাকএন্ডে পাঠানো হয়। App Hosting ব্যাকএন্ড তারপর এই তথ্য ব্যবহার করে সঠিক কনফিগারেশন সহ Cloud Run সেট আপ করে।

আরও জানুন

সম্পূর্ণ App Hosting বিল্ড প্রক্রিয়াটি ওপেন সোর্স।