1. بررسی اجمالی
Cloud Run یک پلت فرم بدون سرور کاملاً مدیریت شده است که به شما امکان می دهد کانتینرهای بدون حالتی را اجرا کنید که از طریق درخواست های HTTP قابل فراخوانی هستند. Cloud Run بدون سرور است: تمام مدیریت زیرساخت را انتزاعی می کند، بنابراین شما می توانید روی آنچه که مهمتر است تمرکز کنید - ساخت برنامه های کاربردی عالی.
این برنامه بر روی Knative ساخته شده است و به شما امکان می دهد کانتینرهای خود را با مدیریت کامل Cloud Run یا در خوشه Google Kubernetes Engine خود با Cloud Run در GKE اجرا کنید.
آنچه خواهید آموخت
در این آزمایشگاه با نحوه انجام کارهای زیر آشنا می شوید:
- برنامه Cloud Run را اجرا کنید
پیش نیازها
- این آزمایشگاه آشنایی با محیط های Cloud Console و Cloud Shell را فرض می کند.
2. راه اندازی و الزامات
راه اندازی پروژه ابری
- به Google Cloud Console وارد شوید و یک پروژه جدید ایجاد کنید یا از یک موجود استفاده مجدد کنید. اگر قبلاً یک حساب Gmail یا Google Workspace ندارید، باید یک حساب ایجاد کنید .
- نام پروژه نام نمایشی برای شرکت کنندگان این پروژه است. این یک رشته کاراکتری است که توسط API های Google استفاده نمی شود. شما می توانید آن را در هر زمان به روز کنید.
- شناسه پروژه در تمام پروژههای Google Cloud منحصربهفرد است و تغییرناپذیر است (پس از تنظیم نمیتوان آن را تغییر داد). Cloud Console به طور خودکار یک رشته منحصر به فرد تولید می کند. معمولاً برای شما مهم نیست که چیست. در اکثر کدها، باید به شناسه پروژه ارجاع دهید (معمولاً به عنوان
PROJECT_ID
شناخته می شود). اگر شناسه تولید شده را دوست ندارید، ممکن است یک شناسه تصادفی دیگر ایجاد کنید. از طرف دیگر، میتوانید خودتان را امتحان کنید و ببینید آیا در دسترس است یا خیر. پس از این مرحله نمی توان آن را تغییر داد و در طول مدت پروژه باقی می ماند. - برای اطلاع شما، یک مقدار سوم وجود دارد، یک شماره پروژه که برخی از API ها از آن استفاده می کنند. در مورد هر سه این مقادیر در مستندات بیشتر بیاموزید.
- در مرحله بعد، برای استفاده از منابع Cloud/APIها باید صورتحساب را در کنسول Cloud فعال کنید . اجرا کردن از طریق این کد لبه نباید هزینه زیادی داشته باشد، اگر اصلاً باشد. برای اینکه منابع را خاموش کنید تا بیش از این آموزش متحمل صورتحساب نشوید، می توانید منابعی را که ایجاد کرده اید حذف کنید یا کل پروژه را حذف کنید. کاربران جدید Google Cloud واجد شرایط برنامه آزمایشی رایگان 300 دلاری هستند.
راه اندازی محیط
Cloud Shell را با کلیک بر روی نماد سمت راست نوار جستجو فعال کنید.
از Cloud Shell، Cloud Run API را فعال کنید:
gcloud services enable run.googleapis.com
اگر از شما خواسته شد که مجوز دهید، برای ادامه روی "مجوز" کلیک کنید.
این باید یک پیام موفقیت آمیز مشابه این را ایجاد کند:
Operation "operations/acf.p2-327036483151-73d90d00-47ee-447a-b600-a6badf0eceae" finished successfully.
3. برنامه را آماده کنید
ابتدا، یک برنامه Node.js مبتنی بر Express را آماده میکنید که به درخواستهای HTTP پاسخ میدهد.
در Cloud Shell یک دایرکتوری جدید به نام 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
فایل بالا حاوی دستور شروع اسکریپت و وابستگی به چارچوب برنامه وب Express است.
سپس، در همان دایرکتوری، با اجرای دستورات زیر یک فایل 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
این کد یک وب سرور اصلی ایجاد می کند که به پورت تعریف شده توسط متغیر محیط PORT گوش می دهد. اکنون برنامه شما به پایان رسیده و آماده استقرار در کانتینر و استقرار است.
4. برنامه Cloud Run را مستقر کنید
دستور زیر را برای استقرار برنامه خود اجرا کنید:
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
در نتیجه دستور قبلی، مراحل زیر اجرا خواهد شد:
خروجی این مراحل را در Cloud Console کاوش کنید: Cloud Build ، Cloud Storage ، Artifact Registry و Cloud Run .
5. تبریک می گویم!
تبریک می گویم! شما به تازگی یک برنامه را در Cloud Run مستقر کرده اید.
آنچه ما پوشش داده ایم:
- نحوه استقرار یک برنامه شروع در Cloud Run
بعدش چیه:
سایر کدهای Cymbal Eats را کاوش کنید:
- راهاندازی گردشهای کاری ابری با Eventarc
- راه اندازی پردازش رویداد از فضای ذخیره سازی ابری
- اتصال به Private CloudSQL از Cloud Run
- اتصال به پایگاه های داده کاملاً مدیریت شده از Cloud Run
- برنامه امن بدون سرور با پروکسی آگاه از هویت (IAP)
- راه اندازی Cloud Run Jobs با Cloud Scheduler
- استقرار ایمن در Cloud Run
- ایمن سازی ترافیک ورودی در اجرای ابر
پاک کن
برای جلوگیری از تحمیل هزینه به حساب Google Cloud خود برای منابع استفاده شده در این آموزش، یا پروژه حاوی منابع را حذف کنید یا پروژه را نگه دارید و منابع فردی را حذف کنید.
حذف پروژه
ساده ترین راه برای حذف صورتحساب، حذف پروژه ای است که برای آموزش ایجاد کرده اید.