1. ওভারভিউ
ক্লাউড রান হল একটি সম্পূর্ণরূপে পরিচালিত সার্ভারহীন প্ল্যাটফর্ম যা আপনাকে HTTP অনুরোধের মাধ্যমে আবেদনযোগ্য স্টেটলেস কন্টেনার চালাতে সক্ষম করে। ক্লাউড রান সার্ভারবিহীন: এটি সমস্ত অবকাঠামো ব্যবস্থাপনাকে বিমূর্ত করে দেয়, যাতে আপনি সবচেয়ে গুরুত্বপূর্ণ বিষয়গুলির উপর ফোকাস করতে পারেন — দুর্দান্ত অ্যাপ্লিকেশন তৈরি করা।
এটি Knative- এ তৈরি করা হয়েছে, যা আপনাকে ক্লাউড রানের মাধ্যমে সম্পূর্ণরূপে পরিচালিত বা আপনার Google কুবারনেটস ইঞ্জিন ক্লাস্টারে GKE-তে ক্লাউড রানের মাধ্যমে আপনার কন্টেনারগুলি চালানোর জন্য বেছে নিতে দেয়।
যা শিখবেন
এই ল্যাবে, আপনি নিম্নলিখিতগুলি কীভাবে করবেন তা শিখবেন:
- ক্লাউড রান অ্যাপ্লিকেশন স্থাপন করুন
পূর্বশর্ত
- এই ল্যাবটি ক্লাউড কনসোল এবং ক্লাউড শেল পরিবেশের সাথে পরিচিতি অনুমান করে।
2. সেটআপ এবং প্রয়োজনীয়তা
ক্লাউড প্রজেক্ট সেটআপ
- Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।
- প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি যে কোনো সময় এটি আপডেট করতে পারেন.
- প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে প্রজেক্ট আইডি উল্লেখ করতে হবে (এটি সাধারণত
PROJECT_ID
হিসাবে চিহ্নিত করা হয়)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করে দেখতে পারেন এবং এটি উপলব্ধ কিনা। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকবে। - আপনার তথ্যের জন্য, একটি তৃতীয় মান রয়েছে, একটি প্রকল্প নম্বর যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
- এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ করা উচিত নয়, যদি কিছু থাকে। রিসোর্স বন্ধ করতে যাতে এই টিউটোরিয়ালের বাইরে আপনার বিলিং খরচ না হয়, আপনি আপনার তৈরি করা রিসোর্স মুছে ফেলতে পারেন বা পুরো প্রোজেক্ট মুছে ফেলতে পারেন। Google ক্লাউডের নতুন ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷
এনভায়রনমেন্ট সেটআপ
অনুসন্ধান বারের ডানদিকে আইকনে ক্লিক করে ক্লাউড শেল সক্রিয় করুন।
ক্লাউড শেল থেকে, ক্লাউড রান API সক্ষম করুন:
gcloud services enable run.googleapis.com
অনুমোদনের জন্য অনুরোধ করা হলে, চালিয়ে যেতে "অনুমোদিত করুন" এ ক্লিক করুন।
এটির অনুরূপ একটি সফল বার্তা তৈরি করা উচিত:
Operation "operations/acf.p2-327036483151-73d90d00-47ee-447a-b600-a6badf0eceae" finished successfully.
3. আবেদন প্রস্তুত করুন
প্রথমে, আপনি একটি সাধারণ এক্সপ্রেস-ভিত্তিক Node.js অ্যাপ্লিকেশন প্রস্তুত করবেন যা HTTP অনুরোধে সাড়া দেয়।
ক্লাউড শেলে starter-nodejs
নামে একটি নতুন ডিরেক্টরি তৈরি করুন, তারপর সেই ডিরেক্টরিতে পরিবর্তন করুন:
mkdir starter-nodejs
cd starter-nodejs
নীচের কমান্ডগুলি চালিয়ে একটি package.json
ফাইল তৈরি করুন:
cat > ./package.json << EOF
{
"name": "cloudrun-starter-app",
"version": "1.0.0",
"description": "Node.js Starter Application",
"main": "index.js",
"scripts": {
"start": "node index.js"
},
"author": "",
"license": "Apache-2.0",
"dependencies": {
"express": "^4.18.2"
}
}
EOF
উপরের ফাইলটিতে একটি স্টার্ট স্ক্রিপ্ট কমান্ড এবং এক্সপ্রেস ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্কের উপর নির্ভরতা রয়েছে।
এর পরে, একই ডিরেক্টরিতে, নীচের কমান্ডগুলি চালিয়ে একটি index.js
ফাইল তৈরি করুন:
cat > ./index.js << EOF
const express = require('express');
const app = express();
app.get('/', (req, res) => {
console.log('Received a request.');
res.send("Hello Cloud Run!");
});
const port = process.env.PORT || 8080;
app.listen(port, () => {
console.log('Listening on port', port);
});
EOF
এই কোডটি একটি মৌলিক ওয়েব সার্ভার তৈরি করে যা পোর্ট পরিবেশ পরিবর্তনশীল দ্বারা সংজ্ঞায়িত পোর্টে শোনে। আপনার অ্যাপটি এখন সমাপ্ত এবং কনটেইনারাইজড এবং স্থাপনের জন্য প্রস্তুত।
4. ক্লাউড রান অ্যাপ্লিকেশন স্থাপন করুন
আপনার অ্যাপ্লিকেশন স্থাপন করতে নীচের কমান্ডটি চালান:
gcloud run deploy starter-app \
--source . \
--region us-central1 \
--allow-unauthenticated \
--max-instances=3
আর্টিফ্যাক্ট রেজিস্ট্রি সংগ্রহস্থল তৈরি নিশ্চিত করুন:
Deploying from source requires an Artifact Registry Docker repository to store built containers. A repository named [cloud-run-source-deploy] in region [us-central1] will be created. Do you want to continue (Y/n)? y
পূর্ববর্তী কমান্ডের ফলস্বরূপ, নিম্নলিখিত পদক্ষেপগুলি কার্যকর করা হবে:
ক্লাউড কনসোলে এই ধাপগুলির আউটপুট অন্বেষণ করুন: ক্লাউড বিল্ড , ক্লাউড স্টোরেজ , আর্টিফ্যাক্ট রেজিস্ট্রি এবং ক্লাউড রান ৷
5. অভিনন্দন!
অভিনন্দন! আপনি এইমাত্র ক্লাউড রানে একটি অ্যাপ্লিকেশন স্থাপন করেছেন৷
আমরা যা কভার করেছি:
- ক্লাউড রানে একটি স্টার্টার অ্যাপ্লিকেশন কীভাবে স্থাপন করবেন
এরপর কি:
অন্যান্য Cymbal Eats কোডল্যাবগুলি অন্বেষণ করুন:
- Eventarc এর সাথে ক্লাউড ওয়ার্কফ্লো ট্রিগার করা
- ক্লাউড স্টোরেজ থেকে ইভেন্ট প্রসেসিং ট্রিগার করছে
- ক্লাউড রান থেকে ব্যক্তিগত ক্লাউডএসকিউএল-এর সাথে সংযোগ করা হচ্ছে
- ক্লাউড রান থেকে সম্পূর্ণরূপে পরিচালিত ডেটাবেসে সংযোগ করা হচ্ছে
- আইডেন্টিটি অ্যাওয়ার প্রক্সি (IAP) সহ সুরক্ষিত সার্ভারহীন অ্যাপ্লিকেশন
- ক্লাউড শিডিউলারের সাথে ক্লাউড রান জব ট্রিগার করা
- ক্লাউড রানে নিরাপদে স্থাপন করা হচ্ছে
- ক্লাউড রান ইনগ্রেস ট্রাফিক সুরক্ষিত
পরিষ্কার করুন
এই টিউটোরিয়ালে ব্যবহৃত সংস্থানগুলির জন্য আপনার Google ক্লাউড অ্যাকাউন্টে চার্জ এড়াতে, হয় সংস্থানগুলি রয়েছে এমন প্রকল্পটি মুছুন, অথবা প্রকল্পটি রাখুন এবং পৃথক সংস্থানগুলি মুছুন৷
প্রকল্প মুছে ফেলা হচ্ছে
বিলিং দূর করার সবচেয়ে সহজ উপায় হল আপনি টিউটোরিয়ালের জন্য তৈরি করা প্রকল্পটি মুছে ফেলা।