ติดตั้งใช้งานเว็บแอปพลิเคชัน Genkit ของ Generative AI ใน Node.js จากระบบควบคุมเวอร์ชันไปยัง Cloud Run โดยอัตโนมัติ

1. ภาพรวม

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

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

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

  • เขียนเว็บแอปพลิเคชันด้วย Cloud Shell Editor
  • จัดเก็บโค้ดแอปพลิเคชันใน GitHub
  • ทำให้แอปพลิเคชันใช้งานได้ใน Cloud Run โดยอัตโนมัติ
  • เพิ่ม Generative AI ลงในแอปพลิเคชันโดยใช้ Genkit
  • จัดการพรอมต์ LLM โดยใช้คลัง dotprompt

2. ข้อกำหนดเบื้องต้น

  1. หากยังไม่มีบัญชี Google คุณต้องสร้างบัญชี Google
    • ใช้บัญชีส่วนตัวแทนบัญชีงานหรือบัญชีโรงเรียน บัญชีงานและบัญชีโรงเรียนอาจมีข้อจำกัดที่ทำให้คุณเปิดใช้ API ที่จำเป็นสำหรับห้องทดลองนี้ไม่ได้
  2. หากยังไม่มีบัญชี GitHub คุณต้องสร้างบัญชี GitHub

3. การตั้งค่าโปรเจ็กต์

  1. ลงชื่อเข้าใช้ Google Cloud Console
  2. เปิดใช้การเรียกเก็บเงินใน Cloud Console
    • การทำแล็บนี้ควรมีค่าใช้จ่ายน้อยกว่า $1 USD ในทรัพยากรระบบคลาวด์
    • คุณสามารถทำตามขั้นตอนที่ส่วนท้ายของแล็บนี้เพื่อลบทรัพยากรเพื่อหลีกเลี่ยงการเรียกเก็บเงินเพิ่มเติม
    • ผู้ใช้ใหม่มีสิทธิ์ใช้ช่วงทดลองใช้ฟรีมูลค่า$300 USD
    • หากกำลังจะเข้าร่วมกิจกรรม Gen AI สำหรับนักพัฒนาซอฟต์แวร์ คุณอาจได้รับเครดิตมูลค่า$1 USD
  3. สร้างโปรเจ็กต์ใหม่หรือเลือกใช้โปรเจ็กต์ที่มีอยู่ซ้ำ
  4. ยืนยันว่าได้เปิดใช้การเรียกเก็บเงินในโปรเจ็กต์ของฉันในการเรียกเก็บเงินใน Cloud แล้ว
    • หากโปรเจ็กต์ใหม่แสดง Billing is disabled ในคอลัมน์ Billing account ให้ทำดังนี้
      1. คลิกจุด 3 จุดในActions คอลัมน์
      2. คลิกเปลี่ยนการเรียกเก็บเงิน
      3. เลือกบัญชีสำหรับการเรียกเก็บเงินที่ต้องการใช้
    • หากคุณเข้าร่วมกิจกรรม Gen AI สำหรับนักพัฒนาซอฟต์แวร์ บัญชีดังกล่าวอาจมีชื่อว่าบัญชีสำหรับการเรียกเก็บเงินของ Google Cloud Platform เวอร์ชันทดลองใช้งาน

4. เปิดเครื่องมือแก้ไข Cloud Shell

  1. ไปที่ Cloud Shell Editor
  2. หากเทอร์มินัลไม่ปรากฏที่ด้านล่างของหน้าจอ ให้เปิดโดยทำดังนี้
    • คลิกเมนู 3 ขีด ไอคอนเมนู 3 ขีด
    • คลิก Terminal
    • คลิก Terminal ใหม่เปิดเทอร์มินัลใหม่ใน Cloud Shell Editor
  3. ในเทอร์มินัล ให้ตั้งค่าโปรเจ็กต์ด้วยคำสั่งนี้
    • รูปแบบ:
      gcloud config set project [PROJECT_ID]
      
    • ตัวอย่าง
      gcloud config set project lab-project-id-example
      
    • หากจำรหัสโปรเจ็กต์ไม่ได้ ให้ทำดังนี้
      • คุณแสดงรหัสโปรเจ็กต์ทั้งหมดได้โดยใช้คำสั่งต่อไปนี้
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      ตั้งค่ารหัสโปรเจ็กต์ในเทอร์มินัลของ Cloud Shell Editor
  4. หากได้รับแจ้งให้ให้สิทธิ์ ให้คลิกให้สิทธิ์เพื่อดำเนินการต่อ คลิกเพื่อให้สิทธิ์ Cloud Shell
  5. คุณควรเห็นข้อความต่อไปนี้
    Updated property [core/project].
    
    หากเห็น WARNING และระบบขอให้คุณ Do you want to continue (Y/N)? แสดงว่าคุณอาจป้อนรหัสโปรเจ็กต์ไม่ถูกต้อง กด N กด Enter แล้วลองเรียกใช้คำสั่ง gcloud config set project อีกครั้ง

5. เปิดใช้ API

เปิดใช้ API ในเทอร์มินัลโดยทำดังนี้

gcloud services enable \
  run.googleapis.com \
  cloudbuild.googleapis.com \
  aiplatform.googleapis.com

คำสั่งนี้อาจใช้เวลาสักครู่จึงจะเสร็จสมบูรณ์ แต่ในที่สุดควรจะแสดงข้อความว่าสำเร็จคล้ายกับข้อความนี้

Operation "operations/acf.p2-73d90d00-47ee-447a-b600" finished successfully.

6. กำหนดค่า Git

  1. ตั้งค่าอีเมลผู้ใช้ Git ทั่วโลก
    git config --global user.email "you@example.com"
    
  2. ตั้งชื่อผู้ใช้ Git ทั่วโลก
    git config --global user.name "Your Name"
    
  3. ตั้งค่าสาขาเริ่มต้นของ Git ทั่วโลกเป็น main โดยทำดังนี้
    git config --global init.defaultBranch main
    

7. เขียนโค้ด

วิธีเขียนแอปพลิเคชันใน Node.js

  1. ไปที่ไดเรกทอรีหลักโดยใช้คำสั่งต่อไปนี้
    cd ~
    
  2. สร้างไดเรกทอรี codelab-genai
    mkdir codelab-genai
    
  3. ไปที่ไดเรกทอรี codelab-genai
    cd codelab-genai
    
  4. วิธีสร้างไฟล์ index.js
    touch index.js
    
  5. สร้างไฟล์ package.json โดยทำดังนี้
    npm init es6 -y
    
  6. เพิ่ม express เป็นการขึ้นต่อกัน
    npm install express
    
  7. เพิ่มไฟล์ .gitignore เพื่อป้องกันการคอมมิต node_modules
    echo node_modules/ >> .gitignore
    
  8. เปิดไฟล์ index.js ใน Cloud Shell Editor โดยทำดังนี้
    cloudshell edit index.js
    
    ตอนนี้คุณควรเห็นไฟล์ว่างที่ส่วนบนของหน้าจอ คุณแก้ไขไฟล์ index.js นี้ได้ที่นี่ แสดงว่าโค้ดจะอยู่ในส่วนบนของหน้าจอ
  9. คัดลอกโค้ดต่อไปนี้และวางลงในไฟล์ index.js ที่เปิดอยู่
    import express from 'express';
    
    const app = express();
    app.get('/', async (req, res) => {
        res.send('Hello world!');
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
    หลังจากผ่านไป 2-3 วินาที Cloud Shell Editor จะบันทึกโค้ดโดยอัตโนมัติ โค้ดนี้จะตอบสนองต่อคำขอ HTTP ด้วยคำทักทาย "Hello world!" ของเรา

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

8. สร้างที่เก็บ

  1. กลับไปที่เทอร์มินัล Cloud Shell ที่ด้านล่างของหน้าจอ
  2. ตรวจสอบว่าคุณยังอยู่ในไดเรกทอรีที่ถูกต้อง
    cd ~/codelab-genai
    
  3. เริ่มต้นที่เก็บ Git
    git init -b main
    
  4. เข้าสู่ระบบ GitHub CLI
    gh auth login
    
    กด Enter เพื่อยอมรับตัวเลือกเริ่มต้นและทำตามวิธีการในเครื่องมือ GitHub CLI ซึ่งรวมถึง
    1. คุณต้องการเข้าสู่ระบบบัญชีใด GitHub.com
    2. คุณต้องการใช้โปรโตคอลใดสำหรับการดำเนินการ Git ในโฮสต์นี้ HTTPS
    3. ตรวจสอบสิทธิ์ Git ด้วยข้อมูลเข้าสู่ระบบ GitHub ไหม Y (ข้ามหากไม่ปรากฏ)
    4. คุณต้องการตรวจสอบสิทธิ์ GitHub CLI ด้วยวิธีใด Login with a web browser
    5. คัดลอกรหัสแบบใช้ครั้งเดียว
    6. เปิด https://github.com/login/device
    7. วางรหัสแบบใช้ครั้งเดียว
    8. คลิกให้สิทธิ์ github
    9. เข้าสู่ระบบให้เสร็จสมบูรณ์
  5. ยืนยันว่าคุณได้เข้าสู่ระบบแล้ว
    gh api user -q ".login"
    
    หากคุณเข้าสู่ระบบสำเร็จแล้ว คำสั่งนี้ควรแสดงชื่อผู้ใช้ GitHub ของคุณ
  6. สร้างตัวแปร GITHUB_USERNAME
    GITHUB_USERNAME=$(gh api user -q ".login")
    
  7. ยืนยันว่าคุณได้สร้างตัวแปรสภาพแวดล้อมแล้ว
    echo ${GITHUB_USERNAME}
    
    หากสร้างตัวแปรสำเร็จแล้ว ตัวแปรนี้ควรแสดงชื่อผู้ใช้ GitHub ของคุณ
  8. สร้างที่เก็บ GitHub ที่ว่างเปล่าชื่อ codelab-genai
    gh repo create codelab-genai --private
    
    หากได้รับข้อผิดพลาดต่อไปนี้
    GraphQL: Name already exists on this account (createRepository)
    
    คุณมีที่เก็บชื่อ codelab-genai อยู่แล้ว คุณมี 2 ตัวเลือกในการทำตามบทแนะนำนี้ต่อ
  9. เพิ่มที่เก็บ codelab-genai เป็นรีโมต origin ดังนี้
    git remote add origin https://github.com/${GITHUB_USERNAME}/codelab-genai
    

9. แชร์รหัส

  1. ตรวจสอบว่าคุณอยู่ในไดเรกทอรีที่ถูกต้องโดยทำดังนี้
    cd ~/codelab-genai
    
  2. เพิ่มไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันไปยังคอมมิตนี้
    git add .
    
  3. สร้างคอมมิตแรก
    git commit -m "add http server"
    
  4. พุชคอมมิตไปยังกิ่ง main ของที่เก็บ origin
    git push -u origin main
    

คุณเรียกใช้คำสั่งนี้และไปที่ URL ที่ได้เพื่อดูโค้ดของแอปพลิเคชันใน GitHub ได้

echo -e "\n\nTo see your code, visit this URL:\n \
    https://github.com/${GITHUB_USERNAME}/codelab-genai/blob/main/index.js \n\n"

10. ตั้งค่าการทำให้ใช้งานได้อัตโนมัติ

  1. เปิดแท็บ Cloud Shell Editor ค้างไว้ เราจะกลับมาที่แท็บนี้ในภายหลัง
  2. ไปที่หน้า Cloud Run ในแท็บใหม่
  3. เลือกโปรเจ็กต์ Google Cloud ที่ถูกต้องในคอนโซล เมนูแบบเลื่อนลงของโปรเจ็กต์ Google Cloud Console
  4. คลิกเชื่อมต่อ REPO
  5. คลิกตั้งค่าด้วย Cloud Build
    1. เลือก GitHub เป็นผู้ให้บริการที่เก็บ
      • หากไม่ได้เข้าสู่ระบบบัญชี GitHub ในเบราว์เซอร์ ให้เข้าสู่ระบบด้วยข้อมูลเข้าสู่ระบบ
    2. คลิกตรวจสอบสิทธิ์ แล้วคลิกต่อไป
    3. หลังจากเข้าสู่ระบบแล้ว คุณจะเห็นข้อความในหน้า Cloud Run ที่ระบุว่าแอป GitHub ยังไม่ได้ติดตั้งอยู่บนที่เก็บของคุณ
    4. คลิกปุ่มติดตั้ง Google Cloud Build
      • ในหน้าการตั้งค่าการติดตั้ง ให้เลือกเลือกเฉพาะที่เก็บ แล้วเลือกที่เก็บ codelab-genai ที่คุณสร้างผ่าน CLI
      • คลิกติดตั้ง
      • หมายเหตุ: หากคุณมีที่เก็บ GitHub จำนวนมาก การโหลดอาจใช้เวลา 2-3 นาที
    5. เลือก your-user-name/codelab-genai เป็นที่เก็บ
      • หากไม่มีที่เก็บ ให้คลิกลิงก์จัดการที่เก็บที่เชื่อมต่อ
    6. ออกจาก Branch ในฐานะ ^main$
    7. คลิก Go, Node.js, Python, Java, .NET Core, Ruby หรือ PHP ผ่าน Buildpack ของ Google Cloud
      • ปล่อยให้ช่องอื่นๆ (Build context directory, Entrypoint และ Function target) เป็นไปตามเดิม
    8. คลิกบันทึก
  6. เลื่อนลงไปที่การตรวจสอบสิทธิ์
  7. คลิกอนุญาตการเรียกใช้ที่ไม่ผ่านการตรวจสอบสิทธิ์
  8. คลิกสร้าง

เมื่อการสร้างเสร็จสิ้น (ซึ่งจะใช้เวลาหลายนาที) ให้เรียกใช้คำสั่งนี้และไปที่ URL ที่ได้เพื่อดูแอปพลิเคชันที่กำลังทำงาน

echo -e "\n\nOnce the build finishes, visit your live application:\n \
    "$( \
        gcloud run services list | \
        grep codelab-genai | \
        awk '/URL/{print $2}' | \
        head -1 \
    )" \n\n"

11. เปลี่ยนรหัส

กลับไปที่ Cloud Shell Editor

หากยังเปิด Cloud Shell Editor อยู่ ให้ข้ามขั้นตอนเหล่านี้

  1. ไปที่ Cloud Shell Editor
  2. หากเทอร์มินัลไม่ปรากฏที่ด้านล่างของหน้าจอ ให้เปิดโดยทำดังนี้
    • คลิกเมนู 3 ขีด ไอคอนเมนู 3 ขีด
    • คลิก Terminal
    • คลิก Terminal ใหม่เปิดเทอร์มินัลใหม่ใน Cloud Shell Editor
  3. ในเทอร์มินัล ให้ตั้งค่าโปรเจ็กต์ด้วยคำสั่งนี้
    • รูปแบบ:
      gcloud config set project [PROJECT_ID]
      
    • ตัวอย่าง
      gcloud config set project lab-project-id-example
      
    • หากจำรหัสโปรเจ็กต์ไม่ได้ ให้ทำดังนี้
      • คุณแสดงรหัสโปรเจ็กต์ทั้งหมดได้โดยใช้คำสั่งต่อไปนี้
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      ตั้งค่ารหัสโปรเจ็กต์ในเทอร์มินัลของ Cloud Shell Editor
  4. หากได้รับแจ้งให้ให้สิทธิ์ ให้คลิกให้สิทธิ์เพื่อดำเนินการต่อ คลิกเพื่อให้สิทธิ์ Cloud Shell
  5. คุณควรเห็นข้อความต่อไปนี้
    Updated property [core/project].
    
    หากเห็น WARNING และระบบขอให้คุณ Do you want to continue (Y/N)? แสดงว่าคุณอาจป้อนรหัสโปรเจ็กต์ไม่ถูกต้อง กด N กด Enter แล้วลองเรียกใช้คำสั่ง gcloud config set project อีกครั้ง

เพิ่ม Genkit และ Vertex AI ลงในแอปพลิเคชัน

  1. กลับไปที่เทอร์มินัล Cloud Shell ที่ด้านล่างของหน้าจอ
  2. ตรวจสอบว่าคุณยังอยู่ในไดเรกทอรีที่ถูกต้อง
    cd ~/codelab-genai
    
  3. ติดตั้ง Genkit SDK สำหรับ Node.js โดยใช้คำสั่งต่อไปนี้
    npm install @genkit-ai/ai
    
  4. ติดตั้ง Genkit SDK สำหรับ Vertex AI ใน Node.js โดยใช้คำสั่งต่อไปนี้
    npm install @genkit-ai/vertexai
    
  5. เปิด index.js อีกครั้งใน Cloud Shell Editor
    cloudshell edit ~/codelab-genai/index.js
    
  6. แทนที่โค้ดในไฟล์ index.js ด้วยโค้ดต่อไปนี้
    import express from 'express';
    const app = express();
    
    import { genkit } from 'genkit';
    import { gemini15Flash, vertexAI } from '@genkit-ai/vertexai';
    
    const ai = genkit({
        plugins: [
            vertexAI({ location: 'us-central1' }),
        ],
    });
    
    app.get('/', async (req, res) => {
        const animal = req.query.animal || 'dog';
        const prompt = `Give me 10 fun facts about ${animal}. Return this as html without backticks.`
        const llmResponse = await ai.generate({
            model: gemini15Flash,
            prompt: prompt,
        });
        const html = llmResponse.text;
        res.send(html);
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
  1. ตรวจสอบว่าคุณยังอยู่ในไดเรกทอรีที่ถูกต้องใน Cloud Shell โดยทำดังนี้
    cd ~/codelab-genai
    
  2. เรียกใช้คำสั่งต่อไปนี้เพื่อคอมมิตแอปพลิเคชันเวอร์ชันใหม่ไปยังที่เก็บ Git ในเครื่อง
    git add .
    git commit -m "add latest changes"
    
  3. พุชการเปลี่ยนแปลงไปยัง GitHub
    git push
    
  4. เมื่อการสร้างเสร็จสิ้น ให้เรียกใช้คำสั่งนี้และไปที่แอปพลิเคชันที่ติดตั้งใช้งาน
    echo -e "\n\nOnce the build finishes, visit your live application:\n \
        "$( \
            gcloud run services list | \
            grep codelab-genai | \
            awk '/URL/{print $2}' | \
            head -1 \
        )" \n\n"
    

การบิลด์อาจใช้เวลาหลายนาทีก่อนที่จะเสร็จสิ้นและคุณจะเห็นการเปลี่ยนแปลง

คุณดูประวัติการแก้ไขทั้งหมดได้ที่ https://console.cloud.google.com/run/detail/us-central1/codelab-genai/revisions

12. (ไม่บังคับ) ใช้ไฟล์ .prompt กับ Genkit

  1. กลับไปที่เทอร์มินัล Cloud Shell ที่ด้านล่างของหน้าจอ
  2. ตรวจสอบว่าคุณยังอยู่ในไดเรกทอรีที่ถูกต้อง
    cd ~/codelab-genai
    
  3. สร้างโฟลเดอร์ prompts เพื่อจัดเก็บพรอมต์โดยทำดังนี้
    mkdir prompts
    
  4. สร้างไฟล์ animal-facts.prompt เพื่อสร้างพรอมต์แรกโดยทำดังนี้
    touch prompts/animal-facts.prompt
    
  5. เปิดไฟล์ animal-facts.prompt ใน Cloud Shell Editor โดยทำดังนี้
    cloudshell edit ~/codelab-genai/prompts/animal-facts.prompt
    
  6. แก้ไข animal-facts.prompt แล้ววางโค้ดต่อไปนี้ลงไป
    ---
    model: vertexai/gemini-1.5-flash
    input:
        schema:
            animal: string
    ---
    
    Give me 10 fun facts about {{animal}}. Return the results as HTML without markdown backticks.
    
  7. เปิดไฟล์ index.js ใน Cloud Shell Editor โดยทำดังนี้
    cloudshell edit ~/codelab-genai/index.js
    
  8. แทนที่โค้ดในไฟล์ index.js ด้วยโค้ดต่อไปนี้
    import express from 'express';
    const app = express();
    
    import { genkit } from 'genkit';
    import { vertexAI } from '@genkit-ai/vertexai';
    
    const ai = genkit({
        plugins: [
            vertexAI({ location: 'us-central1' }),
        ],
    });
    
    app.get('/', async (req, res) => {
        const animal = req.query.animal || 'dog';
        const animalPrompt = ai.prompt('animal-facts');
        const llmResponse = await animalPrompt({animal});
        const html = llmResponse.text;
        res.send(html);
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
  1. ตรวจสอบว่าคุณยังอยู่ในไดเรกทอรีที่ถูกต้องใน Cloud Shell โดยทำดังนี้
    cd ~/codelab-genai
    
  2. เรียกใช้คำสั่งต่อไปนี้เพื่อคอมมิตแอปพลิเคชันเวอร์ชันใหม่ไปยังที่เก็บ Git ในเครื่อง
    git add .
    git commit -m "add latest changes"
    
  3. พุชการเปลี่ยนแปลงไปยัง GitHub
    git push
    
  4. เมื่อการสร้างเสร็จสิ้น ให้เรียกใช้คำสั่งนี้และไปที่แอปพลิเคชันที่ติดตั้งใช้งาน
    echo -e "\n\nOnce the build finishes, visit your live application:\n \
        "$( \
            gcloud run services list | \
            grep codelab-genai | \
            awk '/URL/{print $2}' | \
            head -1 \
        )" \n\n"
    

การบิลด์อาจใช้เวลาหลายนาทีก่อนที่จะเสร็จสิ้นและคุณจะเห็นการเปลี่ยนแปลง

คุณดูประวัติการแก้ไขทั้งหมดได้ที่ https://console.cloud.google.com/run/detail/us-central1/codelab-genai/revisions

13. (ไม่บังคับ) ใช้พรอมต์ของระบบ

ขั้นตอนนี้ถือว่าคุณได้เพิ่มไฟล์ .prompt ในขั้นตอนก่อนหน้าแล้ว

  1. กลับไปที่เทอร์มินัล Cloud Shell ที่ด้านล่างของหน้าจอ
  2. ตรวจสอบว่าคุณยังอยู่ในไดเรกทอรีที่ถูกต้อง
    cd ~/codelab-genai
    
  3. เปิดไฟล์ animal-facts.prompt ใน Cloud Shell Editor โดยทำดังนี้
    cloudshell edit ~/codelab-genai/prompts/animal-facts.prompt
    
  4. แก้ไข animal-facts.prompt แล้ววางโค้ดต่อไปนี้ลงไป
    ---
    model: vertexai/gemini-1.5-flash
    config:
        temperature: 0.9
    input:
        schema:
            animal: string
    ---
    
    role "system"
    The user should have submitted an animal.
    If the user requests anything besides animal fun facts, respond in a kind and firm manner that you only provide information about fun facts.
    Give the user 10 fun facts about the animal the user provided.
    All responses should be valid HTML without markdown backticks.
    
    role "user"
    {{animal}}
    
  1. ตรวจสอบว่าคุณยังอยู่ในไดเรกทอรีที่ถูกต้องใน Cloud Shell โดยทำดังนี้
    cd ~/codelab-genai
    
  2. เรียกใช้คำสั่งต่อไปนี้เพื่อคอมมิตแอปพลิเคชันเวอร์ชันใหม่ไปยังที่เก็บ Git ในเครื่อง
    git add .
    git commit -m "add latest changes"
    
  3. พุชการเปลี่ยนแปลงไปยัง GitHub
    git push
    
  4. เมื่อการสร้างเสร็จสิ้น ให้เรียกใช้คำสั่งนี้และไปที่แอปพลิเคชันที่ติดตั้งใช้งาน
    echo -e "\n\nOnce the build finishes, visit your live application:\n \
        "$( \
            gcloud run services list | \
            grep codelab-genai | \
            awk '/URL/{print $2}' | \
            head -1 \
        )" \n\n"
    

การบิลด์อาจใช้เวลาหลายนาทีก่อนที่จะเสร็จสิ้นและคุณจะเห็นการเปลี่ยนแปลง

คุณดูประวัติการแก้ไขทั้งหมดได้ที่ https://console.cloud.google.com/run/detail/us-central1/codelab-genai/revisions

14. ขอแสดงความยินดี

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

หากคุณชอบแล็บนี้ คุณสามารถลองอีกครั้งในภาษาหรือเฟรมเวิร์กการเขียนโค้ดอื่นได้

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