คำแนะนำเกี่ยวกับ Cloud Run ตั้งแต่เริ่มต้นจนถึงการสาธิตการใช้งานจริง

1. บทนำ

Codelab นี้จะแนะนำพื้นฐานของการเริ่มต้นใช้งาน Cloud Run คุณจะได้เรียนรู้วิธีใช้ฟีเจอร์เพิ่มเติม ซึ่งรวมถึงการเข้าถึง VPC, Secret Manager และ ADK สำหรับเอเจนต์ AI ที่โฮสต์ใน Cloud Run

สิ่งที่คุณจะได้เรียนรู้

  • ทําให้อิมเมจ nginx ใช้งานได้
  • ทําให้ใช้งานได้จากซอร์สโค้ด
  • ย้อนกลับการทำให้ใช้งานได้
  • แสดงตัวอย่างการทำให้ใช้งานได้
  • ใช้เครื่องมือเซิร์ฟเวอร์ MCP ของ Developer Knowledge
  • ใช้ Secret Manager กับ Cloud Run
  • เชื่อมต่อกับบริการ Cloud Run ภายใน VPC
  • ติดตั้งใช้งาน Agent ประเภท ADK ใน Cloud Run

สิ่งที่คุณต้องมี

  • เว็บเบราว์เซอร์ เช่น Chrome
  • โปรเจ็กต์ Google Cloud ที่เปิดใช้การเรียกเก็บเงิน

สร้างโปรเจ็กต์ Google Cloud

  1. ในคอนโซล Google Cloud ในหน้าตัวเลือกโปรเจ็กต์ ให้เลือกหรือสร้างโปรเจ็กต์ Google Cloud
  2. ตรวจสอบว่าได้เปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์ที่อยู่ในระบบคลาวด์แล้ว ดูวิธีตรวจสอบว่าได้เปิดใช้การเรียกเก็บเงินในโปรเจ็กต์แล้วหรือไม่

เริ่มต้น Cloud Shell

Cloud Shell คือสภาพแวดล้อมบรรทัดคำสั่งที่ทำงานใน Google Cloud ซึ่งโหลดเครื่องมือที่จำเป็นไว้ล่วงหน้า

  1. คลิกเปิดใช้งาน Cloud Shell ที่ด้านบนของคอนโซล Google Cloud
  2. เมื่อเชื่อมต่อกับ Cloud Shell แล้ว ให้ยืนยันการตรวจสอบสิทธิ์โดยทำดังนี้
    gcloud auth list
    
  3. ตรวจสอบว่าได้กำหนดค่าโปรเจ็กต์แล้ว
    gcloud config get project
    
  4. หากไม่ได้ตั้งค่าโปรเจ็กต์ตามที่คาดไว้ ให้ตั้งค่าดังนี้
    export PROJECT_ID=<YOUR_PROJECT_ID>
    gcloud config set project $PROJECT_ID
    

ตั้งค่าตัวแปรสภาพแวดล้อม

Codelab นี้ใช้ตัวแปรสภาพแวดล้อมต่อไปนี้

ก่อนอื่น ให้ตั้งค่าภูมิภาค

export REGION=<YOUR_REGION>

จากนั้นยืนยัน PROJECT_ID และ REGION

echo "PROJECT_ID: $PROJECT_ID | REGION: $REGION"

2. ทำให้ใช้งานได้จากอิมเมจ

ในส่วนนี้ คุณจะทําให้อิมเมจ nginx มาตรฐานใช้งานได้โดยตรงจาก Docker Hub คุณจะกำหนดค่าให้เข้าถึงได้แบบสาธารณะและตั้งค่าพอร์ตคอนเทนเนอร์เป็น 80

  1. ติดตั้งใช้งานบริการ nginx ด้วยคำสั่งต่อไปนี้
   gcloud run deploy nginx-service \
     --image=nginx \
     --allow-unauthenticated \
     --port=80 \
     --region=$REGION
  1. เมื่อการติดตั้งใช้งานเสร็จสมบูรณ์ เอาต์พุตจากคำสั่งจะแสดง URL ของบริการ เปิด URL นั้นในเบราว์เซอร์เพื่อดูหน้า "ยินดีต้อนรับสู่ nginx!"

3. ติดตั้งใช้งานจากแหล่งที่มา

mkdir color-app && cd $_

สร้างไฟล์ชื่อ requirements.txt ที่มีเนื้อหาต่อไปนี้

Flask>=2.0.0
gunicorn>=20.0.0

สร้างไฟล์ชื่อ main.py ที่มีเนื้อหาต่อไปนี้

import os
from flask import Flask, render_template_string

app = Flask(__name__)

TEMPLATE = """
<!doctype html>
<html lang="en">
<head>
    <title>Cloud Run Traffic Revisions</title>
    <style>
        body {
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 50vh;
            background-color: darkseagreen;
            font-family: sans-serif;
        }
        .content {
            background-color: rgba(255, 255, 255, 0.8); /* Semi-transparent white background */
            padding: 2em;
            border-radius: 8px;
            text-align: center;
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        }
    </style>
</head>
<body>
    <div class="content">
	  <!-- ROLLBACK DEMO: change this text to "gray" -->
        <p>background color: <strong>darkseagreen</strong></p>
    </div>
</body>
</html>
"""

@app.route('/')
def main():
    
    return render_template_string(TEMPLATE)

if __name__ == '__main__':
    port = int(os.environ.get('PORT', 8080))
    app.run(debug=True, host='0.0.0.0', port=port)

ตอนนี้ให้เรียกใช้คำสั่งต่อไปนี้

gcloud run deploy \
 --allow-unauthenticated
 --region $REGION

4. การย้อนกลับและลิงก์ตัวอย่าง

ในส่วนนี้ คุณจะแนะนำข้อบกพร่องและเรียนรู้วิธีการย้อนกลับไปใช้การแก้ไขก่อนหน้าขณะที่คุณตรวจสอบการแก้ไข

  1. ก่อนอื่น ให้บันทึกชื่อของการแก้ไขที่ให้บริการรับส่งข้อมูลในปัจจุบัน เนื่องจากไม่มีข้อบกพร่อง
GOOD_REVISION=$(gcloud run revisions list --service color-app \
  --region $REGION --format 'value(REVISION)')
  1. ในไฟล์ color-app main.py ให้ค้นหา "ROLLBACK DEMO" แล้วอัปเดตบรรทัดเป็นดังนี้
<p>background color: <strong>gray</strong></p>
  1. ตอนนี้ให้เรียกใช้ gcloud run deploy อีกครั้ง โปรดสังเกตว่าระบบใช้การกำหนดค่าก่อนหน้าของคุณอย่างไร

เมื่อคุณทำให้ข้อบกพร่องใช้งานได้แล้ว คุณสามารถกลับไปที่แหล่งที่มา ทำการเปลี่ยนแปลงหรือใช้ git revert แล้วสร้าง ทริกเกอร์บิลด์ใหม่ ฯลฯ อย่างไรก็ตาม คุณอาจพบข้อผิดพลาดระหว่างทางได้

วิธีที่ปลอดภัยกว่าคือการย้อนกลับ

  1. หากต้องการย้อนกลับไปเป็นการแก้ไขเวอร์ชันก่อนหน้า ให้เรียกใช้คำสั่งต่อไปนี้
gcloud run services update-traffic color-app \
  --to-revisions=$GOOD_REVISION=100 \
  --region=$REGION

ตอนนี้คุณสามารถติดตั้งใช้งานรีวิชันใหม่ที่จะไม่รับการเข้าชมใดๆ ได้แล้ว

  1. ตอนนี้ให้แก้ไขข้อบกพร่องโดยเปลี่ยนข้อความกลับเป็น darkseagreen
<p>background color: <strong>darkseagreen</strong></p>
  1. และนำไปใช้เพื่อยืนยันการแก้ไข โปรดทราบว่าเวอร์ชันนี้จะไม่ได้รับการเข้าชมใดๆ เนื่องจากมีการปักหมุดการเข้าชม 100% ไปยัง GOOD_REVISION
gcloud run deploy color-app --no-traffic --tag bugfix --region $REGION
  1. ยืนยันการติดตั้งใช้งาน

คุณจะเห็นว่า URL แตกต่างกันเล็กน้อย เมื่อไปที่เว็บไซต์ คุณจะเห็นการแก้ไขข้อบกพร่องในการติดตั้งใช้งานนี้

  1. ส่งการเข้าชมกลับไปยังการแก้ไขล่าสุด

ตอนนี้คุณจะตั้งค่าการเข้าชมกลับไปเป็นการแก้ไขล่าสุด

gcloud run services update-traffic color-app \
  --to-latest \
  --region=$REGION

และลบแท็กการแก้ไข

gcloud run services update-traffic color-app \
  --remove-tags=bugfix \
  --region=$REGION

ดูข้อมูลเพิ่มเติมเกี่ยวกับการย้อนกลับได้ในเอกสาร

5. เซิร์ฟเวอร์ MCP ของ Developer Knowledge

เซิร์ฟเวอร์ MCP ความรู้สำหรับนักพัฒนาแอปช่วยให้เครื่องมือพัฒนาที่ทำงานด้วยระบบ AI สามารถค้นหาเอกสารประกอบสำหรับนักพัฒนาแอปอย่างเป็นทางการของ Google และดึงข้อมูลสำหรับผลิตภัณฑ์ของ Google เช่น Firebase, Google Cloud, Android, Maps และอื่นๆ การเชื่อมต่อแอปพลิเคชัน AI กับคลังเอกสารอย่างเป็นทางการของเราโดยตรงจะช่วยให้มั่นใจได้ว่าโค้ดและคำแนะนำที่คุณได้รับนั้นเป็นข้อมูลล่าสุดและอิงตามบริบทที่เชื่อถือได้

คุณจะต้องทำตามคำแนะนำในการติดตั้งเพื่อให้สิทธิ์เข้าถึงเซิร์ฟเวอร์ MCP ความรู้สำหรับนักพัฒนาซอฟต์แวร์แก่ AI Agent

เมื่อติดตั้งแล้ว คุณสามารถถามคำถามเกี่ยวกับฟีเจอร์ล่าสุดในเอกสารประกอบที่อาจพร้อมใช้งานหลังจากวันที่สิ้นสุดการฝึก AI Agent ของคุณได้

เช่น หากดูบันทึกประจำรุ่นของ Cloud Run คุณจะเห็นรายการสำหรับวันที่ 24 กุมภาพันธ์ 2026 เกี่ยวกับ "การทำให้บริการ Cloud Run แบบหลายภูมิภาคที่มีความพร้อมใช้งานสูงใช้งานได้พร้อมการเปลี่ยนไปใช้ระบบสำรองและการเปลี่ยนกลับอัตโนมัติสำหรับการรับส่งข้อมูลภายนอกโดยใช้สถานะบริการของ Cloud Run (ตัวอย่าง)"

ตอนนี้คุณสามารถถาม AI Agent ว่า "บอกฉันเพิ่มเติมเกี่ยวกับฟีเจอร์ใหม่ของ Cloud Run สำหรับเฟลโอเวอร์อัตโนมัติแบบหลายภูมิภาค"

6. การใช้ Secret Manager

คุณแสดงข้อมูลลับใน Cloud Run ได้ 3 วิธีดังนี้

  1. เป็นตัวแปรสภาพแวดล้อม (ล็อกไว้กับเวอร์ชันที่ดึงมาตอนเวลาที่ทำการติดตั้งใช้งาน)
  2. ต่อเชื่อมเป็นวอลุ่มไฟล์ (อัปเดตเป็นเวอร์ชันล่าสุดอย่างต่อเนื่อง)
  3. การใช้ไลบรารีของไคลเอ็นต์ Secret Manager ในโค้ด

ในส่วนนี้ คุณจะเปิดเผยข้อมูลลับเป็นตัวแปรสภาพแวดล้อมโดยใช้บัญชีบริการเฉพาะ

  1. สร้างข้อมูลลับใหม่ชื่อ "my-secret"
gcloud secrets create my-secret --replication-policy="automatic"
  1. เพิ่มค่าข้อมูลลับเป็นเวอร์ชันใหม่โดยทำดังนี้
echo -n "my precious" | gcloud secrets versions add my-secret --data-file=-
  1. สร้างบัญชีบริการเฉพาะสำหรับแอปสีโดยทำดังนี้
gcloud iam service-accounts create color-app-sa \
     --display-name="Color App Service Account"
  1. ให้สิทธิ์เข้าถึงลับแก่บัญชีบริการเฉพาะ
   gcloud secrets add-iam-policy-binding my-secret \
     --member="serviceAccount:color-app-sa@${PROJECT_ID}.iam.gserviceaccount.com" \
     --role="roles/secretmanager.secretAccessor"
  1. ทําการติดตั้งใช้งานอีกครั้ง ตอนนี้บริการจะมีสิทธิ์เข้าถึงตัวแปรสภาพแวดล้อม MY_SECRET แล้ว
gcloud run deploy color-app \
     --source . \
     --update-secrets=MY_SECRET=my-secret:latest \
     --service-account=color-app-sa@${PROJECT_ID}.iam.gserviceaccount.com \
     --region=$REGION

7. เชื่อมต่อกับ VPC

ในส่วนนี้ คุณจะตั้งค่าสถาปัตยกรรมต่อไปนี้

  • แบ็กเอนด์ส่วนตัวที่เข้าถึงจากอินเทอร์เน็ตสาธารณะไม่ได้
  • ส่วนหน้าแบบสาธารณะที่สื่อสารกับส่วนหลังผ่านการออก VPC โดยตรง

ตัวอย่างนี้จะใช้เครือข่ายและซับเน็ตเริ่มต้น

ข้อกำหนดเบื้องต้น: ตรวจสอบว่าได้เปิดใช้การเข้าถึง Google แบบส่วนตัวในซับเน็ตแล้วเพื่อให้ VPC สามารถกำหนดเส้นทางคำขอภายในไปยังบริการ Cloud Run ได้

   gcloud compute networks subnets update default \
     --region=$REGION \
     --enable-private-ip-google-access
  1. สร้างโฟลเดอร์สำหรับส่วนนี้
mkdir ../vpc-demo
cd ../vpc-demo
  1. สร้างบริการแบ็กเอนด์ส่วนตัว
mkdir backend
touch backend/app.js
touch backend/package.json

เพิ่มข้อมูลต่อไปนี้ในไฟล์ backend/app.js

const http = require('http');

const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello World from the Private Backend!');
});

const port = process.env.PORT || 8080;
server.listen(port, () => {
  console.log(`Private backend listening on port ${port}`);
});

เพิ่มข้อมูลต่อไปนี้ในไฟล์ backend/package.json

{
    "name": "backend",
    "scripts": {
        "start": "node app.js"
    }
}
  1. ติดตั้งใช้งานแบ็กเอนด์ส่วนตัวที่มี Ingress ภายในเท่านั้น
   gcloud run deploy private-backend \
     --source ./backend \
     --region $REGION \
     --ingress internal \
     --no-allow-unauthenticated
  1. บันทึก URL ของแบ็กเอนด์ คุณจะระบุ URL นี้ให้กับแอปส่วนหน้าในภายหลัง
export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='value(projec
tNumber)')

export BACKEND_URL="https://private-backend-${PROJECT_NUMBER}.${REGION}.run.app"
  1. สร้างแอปฟรอนท์เอนด์
mkdir frontend
touch frontend/app.js
touch frontend/package.json

เพิ่มข้อมูลต่อไปนี้ในไฟล์ frontend/app.js

const http = require('http');

const server = http.createServer(async (req, res) => {
  const backendUrl = process.env.BACKEND_URL;
  
  if (!backendUrl) {
    res.writeHead(500, { 'Content-Type': 'text/plain' });
    return res.end('Error: BACKEND_URL environment variable is missing.');
  }

  try {
    // Fetch the OIDC token from the Metadata server
    const tokenResponse = await fetch(`http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/identity?audience=${backendUrl}`, {
      headers: { 'Metadata-Flavor': 'Google' }
    });

    if (!tokenResponse.ok) {
      throw new Error(`Failed to fetch identity token: ${tokenResponse.statusText}`);
    }
    const token = await tokenResponse.text();

    // Ping the backend with the token
    const response = await fetch(backendUrl, {
      headers: { 'Authorization': `Bearer ${token}` }
    });
    const text = await response.text();

    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end(`Frontend successfully routed through VPC. Backend says: "${text}"`);
  } catch (error) {
    res.writeHead(500, { 'Content-Type': 'text/plain' });
    res.end(`Frontend failed to reach the backend. Error: ${error.message}`);
  }
});

const port = process.env.PORT || 8080;
server.listen(port, () => {
  console.log(`Public frontend listening on port ${port}`);
});
  1. เพิ่มข้อมูลต่อไปนี้ในไฟล์ frontend/package.json
{
    "name": "backend",
    "scripts": {
        "start": "node app.js"
    }
}
  1. สร้างบัญชีบริการเฉพาะสำหรับบริการส่วนหน้าโดยทำดังนี้
  gcloud iam service-accounts create frontend-sa \
     --display-name="Frontend Service Account"
  1. มอบบทบาทผู้เรียกใช้ Cloud Run ให้กับบัญชี
PROJECT_ID=$(gcloud config get project)
  
gcloud projects add-iam-policy-binding $PROJECT_ID \
     --member="serviceAccount:frontend-sa@${PROJECT_ID}.iam.gserviceaccount.com" \
     --role="roles/run.invoker"
  1. ตอนนี้ให้ทำให้ใช้งานได้ส่วนหน้าแบบสาธารณะโดยใช้ข้อมูลขาออก VPC โดยตรง เราตั้งค่า "--vpc-egress=all-traffic" เพื่อบังคับให้คำขอขาออกเข้าสู่ VPC ดังนี้
   gcloud run deploy public-frontend \
     --source ./frontend \
     --region $REGION \
     --allow-unauthenticated \
     --network default \
     --subnet default \
     --vpc-egress all-traffic \
    --service-account=frontend-sa@${PROJECT_ID}.iam.gserviceaccount.com \
     --set-env-vars BACKEND_URL=$BACKEND_URL
  1. ยืนยันบริการ
  • ทดสอบฟรอนท์เอนด์: Curl URL ของฟรอนท์เอนด์แบบสาธารณะ โดยควรสื่อสารกับแบ็กเอนด์และแสดงผลการตอบกลับได้สำเร็จ
     FRONTEND_URL=$(gcloud run services describe public-frontend --region $REGION --format='value(status.url)')
     curl $FRONTEND_URL
  • ทดสอบแบ็กเอนด์ (โดยตรง): พยายามใช้คำสั่ง curl กับ URL แบ็กเอนด์โดยตรงจากเครื่องในพื้นที่ (อินเทอร์เน็ตสาธารณะ) ควรจะล้มเหลวด้วยข้อผิดพลาด 404 เนื่องจากมีการจำกัด Ingress เป็น "internal" และต้องมีการตรวจสอบสิทธิ์
  curl $BACKEND_URL

8. ติดตั้งใช้งาน ADK Agent

ในส่วนนี้ คุณจะเห็นว่า Buildpack ของ Python รองรับการตรวจหาจุดแรกเข้าเริ่มต้นสำหรับ Agent Development Kit (ADK) อย่างไร

คุณจะสร้างโครงสร้างโฟลเดอร์ต่อไปนี้

adk-demo
 - my_agent
   - __init.py__
   - agent.py
 - requirements.txt
  1. สร้างโครงสร้างโฟลเดอร์
mkdir ../adk-demo
cd ../adk-demo
mkdir my_agent
touch my_agent/__init.py__
touch my_agent/agent.py
touch requirements.txt
  1. เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์ my_agent/__init.py__
from . import agent
  1. เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์ my_agent/agent.py
from google.adk import Agent

root_agent = Agent(
    name="demo_agent",
    model="gemini-3-flash-preview",
    instruction="You are a helpful assistant for a Cloud Run demo."
)
  1. เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์ requirements.txt
google-adk
  1. สร้างบัญชีบริการเฉพาะสำหรับตัวแทนโดยทำดังนี้
  gcloud iam service-accounts create agent-sa \
     --display-name="Agent Service Account"
  1. มอบบทบาทผู้ใช้ Vertex AI ให้กับบัญชีบริการ
PROJECT_ID=$(gcloud config get-value project)
  
gcloud projects add-iam-policy-binding $PROJECT_ID \
     --member="serviceAccount:agent-sa@${PROJECT_ID}.iam.gserviceaccount.com" \
     --role="roles/aiplatform.user"
  1. ติดตั้งใช้งาน Agent ของ ADK

คุณต้องติดตั้งใช้งานในภูมิภาคที่เข้าถึง Gemini API ได้ ในตัวอย่างนี้คือ us-west1

gcloud run deploy my-adk-agent-demo \
   --source . \
   --region us-west1 \
   --allow-unauthenticated \
   --service-account=agent-sa@${PROJECT_ID}.iam.gserviceaccount.com \
   --set-env-vars="GOOGLE_GENAI_USE_VERTEXAI=TRUE,GOOGLE_CLOUD_PROJECT=$PROJECT_ID,GOOGLE_CLOUD_LOCATION=global"
  1. Curl ปลายทาง

คุณจะเห็นว่าเอเจนต์พร้อมใช้งานทันทีในรูปแบบ API ที่พร้อมใช้งานจริง

บันทึก URL ของบริการ Cloud Run ลงในตัวแปรสภาพแวดล้อม

AGENT_URL=$(gcloud run services describe my-adk-agent-demo \
  --region us-west1 \
  --format 'value(status.url)')

สร้างเซสชันกับตัวแทน

curl -X POST $AGENT_URL/apps/my_agent/users/u_123/sessions/s_123 -H "Content-Type: application/json" -d '{"key1": "value1", "key2": 42}'

ถามว่า Cloud Run คืออะไร และกรองคำตอบเพื่อแสดงเฉพาะสิ่งที่ Agent พูด

curl -X POST $AGENT_URL/run \
-H "Content-Type: application/json" \
-d "{
   \"appName\": \"my_agent\",
   \"userId\": \"u_123\",
   \"sessionId\": \"s_123\",
   \"newMessage\": { 
        \"role\": \"user\", 
        \"parts\": [{ \"text\": \"What is Cloud Run?\" 
    }]}
}" | python3 -c "import sys, json; print(json.load(sys.stdin)[-1]['content']['parts'][0]['text'])"

และคุณควรเห็นข้อมูลที่มีลักษณะคล้ายด้านล่าง

Hello! I am **demo_agent**, and I'm here to help you with your Cloud Run demo. **Cloud Run** is a fully managed compute platform by Google Cloud that allows you to run **containerized applications** in a serverless environment...

9. ล้างข้อมูล

หากต้องการหลีกเลี่ยงการเรียกเก็บเงินอย่างต่อเนื่องในบัญชี Google Cloud คุณสามารถลบทั้งโปรเจ็กต์ (แสดงด้านล่าง) หรือลบทรัพยากรแต่ละรายการที่สร้างขึ้นระหว่าง Codelab นี้ก็ได้

ลบบริการ nginx, color-app, private-backend, public-frontend

gcloud run services delete nginx-service --region $REGION --quiet
gcloud run services delete color-app --region $REGION --quiet
gcloud run services delete private-backend --region $REGION --quiet
gcloud run services delete public-frontend --region $REGION --quiet

ลบ Agent ของ ADK (หมายเหตุ: ตัวอย่างนี้จะทำให้ใช้งานได้ใน us-west1)

gcloud run services delete my-adk-agent-demo --region us-west1 --quiet

นำข้อมูลลับที่จัดเก็บไว้ใน Secret Manager ออกโดยทำดังนี้

gcloud secrets delete my-secret --quiet

ลบบัญชีบริการของแอป Color

gcloud iam service-accounts delete color-app-sa@${PROJECT_ID}.iam.gserviceaccount.com --quiet

ลบบัญชีบริการของ ADK Agent

gcloud iam service-accounts delete agent-sa@${PROJECT_ID}.iam.gserviceaccount.com --quiet

(ไม่บังคับ) ลบโปรเจ็กต์

หากสร้างโปรเจ็กต์ใหม่สำหรับ Codelab นี้โดยเฉพาะ คุณสามารถลบทั้งโปรเจ็กต์เพื่อให้แน่ใจว่าระบบจะนำทรัพยากรทั้งหมดออกพร้อมกัน

# run only if you want to delete the entire project
gcloud projects delete $PROJECT_ID

10. ยินดีด้วย

คุณทำ Codelab เสร็จแล้ว คุณได้ดูข้อมูลเบื้องต้นเกี่ยวกับการเริ่มต้นใช้งาน Cloud Run แล้ว

สิ่งที่คุณได้เรียนรู้

  • ทําให้อิมเมจ nginx ใช้งานได้
  • ทําให้ใช้งานได้จากซอร์สโค้ด
  • ย้อนกลับการทำให้ใช้งานได้
  • แสดงตัวอย่างการทำให้ใช้งานได้
  • ใช้เครื่องมือเซิร์ฟเวอร์ MCP ของ Developer Knowledge
  • ใช้ Secret Manager กับ Cloud Run
  • เชื่อมต่อกับบริการ Cloud Run ภายใน VPC
  • ติดตั้งใช้งาน Agent ประเภท ADK ใน Cloud Run