App Hosting จัดการชุดงานที่ซับซ้อนในเบื้องหลังเพื่อลดความซับซ้อนในการติดตั้งใช้งานแอป หน้านี้อธิบายส่วนสําคัญของขั้นตอนงานดังกล่าว โดยให้ข้อมูลเกี่ยวกับจุดที่คุณอาจต้องการปรับแต่งขั้นตอน ทั้งนี้ขึ้นอยู่กับความต้องการของแอป
สถาปัตยกรรมของ Google Cloud และ App Hosting
App Hosting จะจัดระเบียบชุดผลิตภัณฑ์ Google Cloud เพื่อให้คุณนำไปใช้งาน แสดง และตรวจสอบเว็บแอปได้ แอปสร้างขึ้นด้วย Cloud Build, แสดงใน Cloud Run และแคชไว้ใน Cloud CDN บริการที่ผสานรวม เช่น เครื่องมือจัดการข้อมูลลับของ Cloud จะรักษาคีย์ API ของคุณให้ปลอดภัย

- เมื่อมีการพุชการคอมมิตไปยังสาขาที่ใช้งานอยู่ Google Cloud Developer Connect จะส่งเหตุการณ์ไปยัง Firebase App Hosting
- Firebase App Hosting เริ่มการเปิดตัวใหม่สําหรับแบ็กเอนด์แต่ละรายการที่เชื่อมต่อกับที่เก็บข้อมูลเพื่อตอบสนองต่อเหตุการณ์นี้
- Firebase App Hosting สร้างบิลด์ Cloud Build ใหม่สําหรับการคอมมิตของคุณ ในกรณีนี้ บิลด์แพ็ก Google Cloud จะกำหนดเฟรมเวิร์กที่ใช้ในแอปพลิเคชันเพื่อสร้างคอนเทนเนอร์และการกำหนดค่า (รวมถึงตัวแปรสภาพแวดล้อม ข้อมูลลับ อินสแตนซ์ขั้นต่ำหรือสูงสุด การกำหนดค่าหน่วยความจำแบบพร้อมกัน CPU และ VPC) ที่เหมาะกับแอปพลิเคชัน
- เมื่องาน Cloud Build เสร็จสมบูรณ์แล้ว ระบบจะจัดเก็บคอนเทนเนอร์ของคุณในที่เก็บข้อมูล Artifact Registry สำหรับ Firebase App Hosting โดยเฉพาะ Firebase App Hosting จะเพิ่มCloud Runการแก้ไขใหม่ให้กับบริการCloud Runโดยใช้รูปภาพและการกําหนดค่าของคุณ เมื่อCloud Run Revision ได้รับการยืนยันว่าทำงานได้อย่างถูกต้องแล้ว Firebase App Hosting จะแก้ไขการกำหนดค่าการเข้าชมเพื่อชี้คำขอใหม่ทั้งหมดไปยังCloud Run Revision ใหม่ เมื่อถึงจุดนี้ การเปิดตัวจะเสร็จสมบูรณ์
- เมื่อส่งคำขอไปยังเว็บไซต์ที่โฮสต์ใน Firebase App Hosting ระบบจะแสดงคำขอโดยตัวจัดสรรภาระงานของ Google Cloud ที่เปิดใช้ Cloud CDN ระบบจะส่งคำขอที่ไม่ได้แคชไปยังบริการ Cloud Run
การผสานรวมเฟรมเวิร์ก
App Hosting รองรับการสร้างและทำให้ใช้งานได้โดยกำหนดค่าไว้ล่วงหน้าสำหรับเว็บแอปที่พัฒนาในเฟรมเวิร์กต่อไปนี้
- Next.js 13.5.x ขึ้นไป
- Angular 18.2.x ขึ้นไป
ดูรายละเอียดเกี่ยวกับเวอร์ชันและระดับการสนับสนุนที่เฉพาะเจาะจงได้ที่กำหนดการการสนับสนุน
นอกจาก Next.js และ Angular แล้ว App Hosting ยังรองรับเฟรมเวิร์กเว็บที่สามารถสร้างเอาต์พุตจากบิลด์ที่ตรงกับข้อกำหนดของกลุ่มเอาต์พุตของเราด้วย ดูข้อมูลเพิ่มเติมเกี่ยวกับเฟรมเวิร์ก อะแดปเตอร์เฟรมเวิร์ก และเครื่องมือที่เกี่ยวข้องที่ App Hosting รองรับได้ที่เฟรมเวิร์กและเครื่องมือสำหรับ App Hosting
วิธีการทํางานของการผสานรวมที่เก็บข้อมูล App Hosting
การเชื่อมต่อที่สําคัญระหว่างที่เก็บ GitHub กับแบ็กเอนด์ App Hosting จะจัดการโดย Developer Connect ซึ่งเป็นแพลตฟอร์มการเชื่อมต่อของ Google Cloud สําหรับเครื่องมือ DevOps ภายนอก ในระหว่างการสร้างแบ็กเอนด์ App Hosting เวิร์กโฟลว์ UI ของ Developer Connect จะแนะนำคุณในการติดตั้งแอป Firebase GitHub ขั้นตอนสำคัญในกระบวนการนี้มีดังนี้
- คุณให้สิทธิ์ Developer Connect บทบาทผู้ดูแลระบบ Secret Manager ซึ่งจะช่วยให้ระบบจัดเก็บข้อมูลเข้าสู่ระบบอย่างปลอดภัยเป็น "ข้อมูลลับ" ใน Secret Manager ของ Cloud
- คุณให้สิทธิ์แอป GitHub ของ Firebase เข้าถึงที่เก็บ GitHub
- Developer Connect จะจัดเก็บโทเค็นการให้สิทธิ์ GitHub โดยเฉพาะในที่เก็บข้อมูลเครื่องมือจัดการข้อมูลลับของโปรเจ็กต์ โปรดอย่าแก้ไขหรือลบโทเค็นนี้
นอกจากนี้ App Hosting ยังผสานรวมกับ GitHub Checks API เพื่อตรวจสอบการเปิดตัวด้วย การตรวจสอบนี้ช่วยให้คุณดูสถานะของการเปิดตัวใน GitHub และแก้ไขข้อบกพร่องในกระบวนการติดตั้งใช้งานได้ในกรณีที่มีข้อผิดพลาด
การผสานรวมกับ Firebase และบริการอื่นๆ ของ Google
App Hosting จะตั้งค่าทั้งสภาพแวดล้อมการสร้างและรันไทม์เพื่อให้คุณเริ่มต้นใช้งาน Firebase Admin SDK ด้วยข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชัน Google ได้ วิธีนี้จะช่วยให้แบ็กเอนด์สื่อสารกับผลิตภัณฑ์อื่นๆ ของ Firebase ได้ทั้งในรันไทม์และเวลาสร้าง ดูข้อมูลเพิ่มเติมเกี่ยวกับการเริ่มต้นแอปและหัวข้ออื่นๆ ที่เกี่ยวข้องกับ Firebase SDK ได้ที่ผสานรวม Firebase SDK ในเว็บแอป
สถานที่ตั้ง App Hosting แห่ง
App Hosting จะสร้างทรัพยากรแบ็กเอนด์ในตำแหน่งที่เจาะจง ซึ่งเรียกว่าภูมิภาคหลัก แม้ว่า App Hosting จะผสานรวมกับ CDN ทั่วโลกเพื่อการนําส่งที่รวดเร็ว แต่ระบบจะแสดงเนื้อหาที่ไม่ได้แคชจากภูมิภาคหลักของแอป ความยืดหยุ่นนี้ในตำแหน่งของเว็บแอปมีข้อดีหลักๆ ดังนี้
- ปรับปรุงประสิทธิภาพและลดเวลาในการตอบสนองโดยนำข้อมูลมาไว้ใกล้ผู้ใช้มากขึ้นตามภูมิศาสตร์
- ปัญหาร้ายแรงที่เกิดขึ้นกับ App Hosting ในภูมิภาคหนึ่งจะไม่ส่งผลต่อเว็บแอปที่ติดตั้งใช้งานในภูมิภาคอื่นๆ
คุณเลือกภูมิภาคใดก็ได้ต่อไปนี้เมื่อสร้างApp Hostingแบ็กเอนด์จากคอนโซลหรือ Firebase CLI
us-central1
(ไอโอวา)asia-east1
(ไต้หวัน)europe-west4
(เนเธอร์แลนด์)
บัญชีบริการแบ็กเอนด์ App Hosting
ในระหว่างการบิลด์และรันไทม์ แบ็กเอนด์ App Hosting จะตรวจสอบสิทธิ์กับบริการอื่นๆ ของ Google ด้วยบัญชีบริการ ระบบจะสร้างบัญชีบริการเริ่มต้นเพื่อวัตถุประสงค์เหล่านี้เมื่อคุณเปิดใช้ App Hosting ในโปรเจ็กต์ Firebase เป็นครั้งแรก
firebase-app-hosting-compute@PROJECT ID.iam.gserviceaccount.com
บัญชีบริการนี้จะมีผลกับแบ็กเอนด์ทั้งหมดโดยค่าเริ่มต้น และมีชุดสิทธิ์ขั้นต่ำที่ให้คุณสร้าง เรียกใช้ และตรวจสอบแอปได้ นอกจากนี้ยังมีสิทธิ์ตรวจสอบสิทธิ์ SDK การดูแลระบบด้วยข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชันเพื่อดําเนินการต่างๆ เช่น การโหลดข้อมูลจาก Cloud Firestore ดูบทบาท App Hosting ของ Firebase
หากแอปต้องโต้ตอบกับบริการเพิ่มเติมของ Google ขณะสร้างหรือจากแบ็กเอนด์ที่ทำงานอยู่ คุณสามารถปรับแต่งบัญชีบริการเริ่มต้นได้โดยการเพิ่มบทบาท เช่น หากแอปของคุณต้องใช้สิทธิ์สำหรับ Vertex AI คุณอาจต้องเพิ่ม roles/aiplatform.user
หรือบทบาทที่เกี่ยวข้อง
คําศัพท์และคําจํากัดความสําคัญ
- แบ็กเอนด์: ชุดทรัพยากรที่มีการจัดการซึ่ง App Hostingสร้างขึ้นเพื่อสร้างและเรียกใช้เว็บแอป
- การเปิดตัว: แอปเวอร์ชันที่เผยแพร่ซึ่งลิงก์กับ Git Commit
- Branch ที่ใช้งานอยู่: Branch ของที่เก็บ GitHub ที่ติดตั้งใช้งานใน URL ที่ใช้งานอยู่ โดยทั่วไปแล้ว จะเป็นสาขาที่ผสานสาขาฟีเจอร์หรือสาขาการพัฒนา