เป็นเรื่องปกติที่จะมีการทำให้สภาพแวดล้อมหลายอย่างใช้งานได้จากโค้ดเบสเดียวกัน โดยแต่ละสภาพแวดล้อมมีการกำหนดค่าที่แตกต่างกันเล็กน้อย เช่น คุณอาจต้องการกำหนด CPU และ RAM น้อยลงสำหรับสภาพแวดล้อมการทดลองใช้ หรือตรวจสอบว่าสภาพแวดล้อมที่ใช้งานจริงคงอินสแตนซ์ที่ใช้งานอยู่อย่างน้อย 1 รายการและพร้อมแสดงคำขออยู่เสมอ
ดูข้อมูลเพิ่มเติมเกี่ยวกับสภาพแวดล้อมได้ที่ภาพรวมของสภาพแวดล้อมและแนวทางปฏิบัติแนะนำทั่วไปในการตั้งค่าโปรเจ็กต์ Firebase
สิ่งที่ต้องดำเนินการก่อน
- ระบบได้จัดเก็บโค้ดของแอปพลิเคชันไว้ใน GitHub แล้ว
- คุณได้สร้างโปรเจ็กต์ที่แตกต่างกันสำหรับสภาพแวดล้อมแต่ละรายการแล้ว เช่น
my-production-firebase-project
และmy-staging-firebase-project
ขั้นตอนที่ 0: ตั้งค่าสาขา Git เวอร์ชันที่ใช้งานจริง
หากต้องการทำให้สภาพแวดล้อมที่ใช้งานจริงจาก Branch ของ main
ใช้งานได้ ให้ข้ามไปยังขั้นตอนถัดไป ในกรณีที่ต้องการทำให้เวอร์ชันที่ใช้งานจริงใช้งานได้จาก Branch อื่น เช่น production
คุณต้องสร้างแท็กดังกล่าวบน GitHub ก่อน
หากต้องการสร้าง Branch ที่ใช้งานจริงด้วย GitHub UI ให้ดูการสร้างและการลบ Branch ภายในที่เก็บของคุณ
วิธีสร้าง Branch ที่ใช้งานจริงในเครื่องมีดังนี้
$ git checkout -b production
$ git push origin production:production
ขั้นตอนที่ 1: กำหนดค่า apphosting.yaml เวอร์ชันที่ใช้งานจริง
สมมติว่าคุณต้องการตรวจสอบว่าเวอร์ชันที่ใช้งานจริงมีเครื่องที่ทำงานได้อย่างน้อย 1 เครื่องเสมอและมีตัวแปรสภาพแวดล้อมเฉพาะบางรายการ คุณจะต้องกำหนดค่าโดยการสร้างไฟล์ apphosting.yaml
ที่รูทของโปรเจ็กต์โดยใช้คำสั่งต่อไปนี้
# Saved at <repository root>/apphosting.yaml
runConfig:
minInstances: 1
env:
- variable: STORAGE_BUCKET
value: <production Cloud Storage bucket name>
โปรดดูรายการการตั้งค่าที่รองรับทั้งหมดที่หัวข้อกำหนดค่าโฮสติ้งแอป
หลังจากแก้ไข apphosting.yaml
ให้พุชไปยังที่เก็บ GitHub:
$ git add apphosting.yaml
$ git commit -m "Added production App Hosting backend configuration."
$ git push origin
ขั้นตอนที่ 2: ทำให้ Codebase ใช้งานได้เป็นเวอร์ชันที่ใช้งานจริง
เมื่อกำหนดค่าสาขา Git เวอร์ชันที่ใช้งานจริงแล้ว คุณจะสร้างแบ็กเอนด์ App Hosting เวอร์ชันที่ใช้งานจริงใหม่ได้ ดูวิธีการโดยละเอียดได้ที่เริ่มต้นใช้งานโฮสติ้งแอป
หากต้องการสร้างแบ็กเอนด์ใหม่ด้วยคอนโซล Firebase ให้ไปที่ https://console.firebase.google.com/project/_/apphosting เพื่อเริ่มต้น
หากต้องการสร้างภายในเครื่อง คุณต้องติดตั้ง Firebase CLI ก่อน จากนั้นจึงเรียกใช้
firebase apphosting:backends:create --project <replace with your PRODUCTION project ID>
เมื่อคำสั่งนี้สำเร็จ แบ็กเอนด์เวอร์ชันที่ใช้งานจริงควรใช้งานได้ และ App Hosting จะสร้างสัญญาผูกมัดใหม่ไปยัง Branch เวอร์ชันที่ใช้งานจริงโดยอัตโนมัติ
ขั้นตอนที่ 3: ตั้งค่าสาขา Git สำหรับการทดลองใช้
ทำตามขั้นตอนเดียวกับด้านบนเพื่อสร้าง Branch ของการทดลองใช้ใน GitHub ดังนี้
$ git checkout -b staging
$ git push origin staging:staging
ขั้นตอนที่ 4: กำหนดค่าการทดลองใช้ apphosting.yaml
สำหรับทดลองใช้ Branch ควรมีสำเนา
apphosting.yaml ของเวอร์ชันที่ใช้งานจริงอยู่แล้ว มาแก้ไขกันเพื่อให้โฮสติ้งแอปสามารถลดสภาพแวดล้อมการทดลองใช้เมื่อไม่มีการใช้งาน จากนั้นกำหนดค่าอื่นให้กับตัวแปรสภาพแวดล้อม STORAGE_BUCKET
ด้วย
# Saved at <repository root>/apphosting.yaml
runConfig:
minInstances: 0
env:
- variable: STORAGE_BUCKET
value: <some other staging Cloud Storage bucket name>
หลังจากแก้ไขเสร็จแล้ว ให้ส่งไฟล์ไปยังสาขา Git สำหรับการทดลองใช้ดังนี้
$ git add apphosting.yaml
$ git commit -m "Added staging App Hosting backend configuration."
$ git push origin
ขั้นตอนที่ 5: ทำให้ Codebase ใช้งานได้ในการทดลองใช้
เมื่อกำหนดค่าสาขา Git สำหรับการทดลองใช้แล้ว คุณสามารถทำตามขั้นตอนเดียวกับข้างต้นเพื่อทำให้ Codebase ใช้งานได้ในการทดลองใช้
firebase apphosting:backends:create --project <replace with your STAGING project ID>
หลังจากทำขั้นตอนนี้เสร็จแล้ว คุณจะมีแบ็กเอนด์การโฮสต์แอป 2 รายการที่ขับเคลื่อนโดยโค้ดเบสเดียวกัน รายการหนึ่งสำหรับที่ใช้งานจริง และอีกรายการหนึ่งอยู่ในโปรเจ็กต์ Firebase ที่แตกต่างกัน
ขั้นตอนถัดไป
- เจาะลึกรายละเอียดเกี่ยวกับ Firebase Codelab ที่ผสานรวมแอปที่โฮสต์เข้ากับฟีเจอร์การตรวจสอบสิทธิ์ Firebase และ AI ของ Google: Next.js | Angular
- เชื่อมต่อโดเมนที่กำหนดเอง
- กำหนดค่าแบ็กเอนด์
- ตรวจสอบการเปิดตัว การใช้งานเว็บไซต์ และบันทึก