ข้อมูลอ้างอิง Firebase CLI

CLI ในFirebase (GitHub) มอบ มีเครื่องมือที่หลากหลายสำหรับการจัดการ ดู และทำให้ใช้งานได้ในโปรเจ็กต์ Firebase

ก่อนใช้ Firebase CLI สร้างโปรเจ็กต์ Firebase

ตั้งค่าหรืออัปเดต CLI

ติดตั้ง Firebase CLI

คุณติดตั้ง Firebase CLI โดยใช้วิธีการที่ตรงกับการดำเนินการได้ ระบบ ระดับประสบการณ์ และ/หรือกรณีการใช้งาน ไม่ว่าคุณจะติดตั้ง CLI คุณมีสิทธิ์เข้าถึงฟังก์ชันการทำงานเดียวกันนี้และคำสั่ง firebase

หน้าต่าง macOS Linux

หน้าต่าง

คุณติดตั้ง Firebase CLI สำหรับ Windows ได้โดยใช้รายการใดรายการหนึ่งต่อไปนี้ ตัวเลือก:

ตัวเลือก คำอธิบาย แนะนำสำหรับ...
ไบนารีแบบสแตนด์อโลน ดาวน์โหลดไบนารีแบบสแตนด์อโลนสำหรับ CLI จากนั้นคุณสามารถเข้าถึง ไฟล์ปฏิบัติการเพื่อเปิด Shell ที่คุณสามารถเรียกใช้ คำสั่ง firebase นักพัฒนาซอฟต์แวร์รายใหม่

นักพัฒนาแอปที่ไม่ได้ใช้หรือไม่คุ้นเคยกับ Node.js
npm ใช้ npm (ตัวจัดการแพ็กเกจโหนด) เพื่อติดตั้ง CLI และเปิดใช้ คำสั่ง firebase ที่ใช้ได้ทั่วโลก นักพัฒนาแอปที่ใช้ Node.js

ไบนารีแบบสแตนด์อโลน

หากต้องการดาวน์โหลดและเรียกใช้ไบนารีสำหรับ Firebase CLI ให้ทำตามขั้นตอนต่อไปนี้

  1. ดาวน์โหลด ไบนารี CLI สำหรับ Firebase Windows

  2. เข้าถึงไบนารีเพื่อเปิด Shell ที่คุณเรียกใช้ firebase ได้ คำสั่ง

  3. ไปที่เข้าสู่ระบบและทดสอบ CLI

npm

วิธีใช้ npm (ตัวจัดการแพ็กเกจโหนด) เพื่อติดตั้ง Firebase CLI ให้ทำตามขั้นตอนต่อไปนี้

  1. ติดตั้ง Node.js โดยใช้ NVM-Windows (เครื่องมือจัดการเวอร์ชันของโหนด) การติดตั้ง Node.js จะติดตั้งโดยอัตโนมัติ เครื่องมือคำสั่ง npm

  2. ติดตั้ง Firebase CLI ผ่าน npm โดยเรียกใช้คำสั่งต่อไปนี้

    npm install -g firebase-tools

    คำสั่งนี้จะเป็นการเปิดใช้คำสั่ง firebase ที่ใช้ได้ทั่วโลก

  3. ไปที่เข้าสู่ระบบและทดสอบ CLI

macOS หรือ Linux

คุณสามารถติดตั้ง Firebase CLI สำหรับ macOS หรือ Linux ได้โดยใช้ ตัวเลือกต่อไปนี้

ตัวเลือก คำอธิบาย แนะนำสำหรับ...
สคริปต์การติดตั้งอัตโนมัติ เรียกใช้คำสั่งเดียวที่ตรวจหาระบบปฏิบัติการของคุณโดยอัตโนมัติ ดาวน์โหลด CLI รุ่นล่าสุด แล้วเปิดใช้ คำสั่ง firebase นักพัฒนาซอฟต์แวร์รายใหม่

นักพัฒนาแอปที่ไม่ได้ใช้หรือไม่คุ้นเคยกับ Node.js

การทำให้ใช้งานได้โดยอัตโนมัติใน CI/CD สภาพแวดล้อม
ไบนารีแบบสแตนด์อโลน ดาวน์โหลดไบนารีแบบสแตนด์อโลนสำหรับ CLI จากนั้น คุณจะ กำหนดค่าและเรียกใช้ไบนารีที่เหมาะกับเวิร์กโฟลว์ เวิร์กโฟลว์ที่ปรับแต่งได้อย่างเต็มรูปแบบโดยใช้ CLI
npm ใช้ npm (ตัวจัดการแพ็กเกจโหนด) เพื่อติดตั้ง CLI และเปิดใช้ คำสั่ง firebase ที่ใช้ได้ทั่วโลก นักพัฒนาแอปที่ใช้ Node.js

สคริปต์การติดตั้งอัตโนมัติ

หากต้องการติดตั้ง Firebase CLI โดยใช้สคริปต์การติดตั้งอัตโนมัติ ให้ทำตาม ขั้นตอนเหล่านี้:

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

    curl -sL https://firebase.tools | bash

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

  2. ไปที่เข้าสู่ระบบและทดสอบ CLI

สำหรับตัวอย่างและรายละเอียดเพิ่มเติมเกี่ยวกับสคริปต์การติดตั้งอัตโนมัติ โปรดดูที่ ซอร์สโค้ดของสคริปต์ที่ firebase.tools

ไบนารีแบบสแตนด์อโลน

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

  1. ดาวน์โหลดไบนารี CLI ของ Firebase สำหรับระบบปฏิบัติการของคุณ: macOS | Linux

  2. (ไม่บังคับ) ตั้งค่าคำสั่ง firebase ที่ใช้ได้ทั่วโลก

    1. ทำให้ไฟล์สั่งการไบนารีได้โดยเรียกใช้ chmod +x ./firebase_tools
    2. เพิ่มเส้นทางของไบนารีลงใน เส้นทาง
  3. ไปที่เข้าสู่ระบบและทดสอบ CLI

npm

ในการใช้ npm (ตัวจัดการแพ็กเกจโหนด) เพื่อติดตั้ง Firebase CLI ให้ทำตามขั้นตอนต่อไปนี้

  1. ติดตั้ง Node.js โดยใช้ nvm (เครื่องมือจัดการเวอร์ชันโหนด)
    การติดตั้ง Node.js จะติดตั้งโดยอัตโนมัติ เครื่องมือคำสั่ง npm

  2. ติดตั้ง Firebase CLI ผ่าน npm โดยเรียกใช้คำสั่งต่อไปนี้

    npm install -g firebase-tools

    คำสั่งนี้จะเป็นการเปิดใช้คำสั่ง firebase ที่ใช้ได้ทั่วโลก

  3. ไปที่เข้าสู่ระบบและทดสอบ CLI

เข้าสู่ระบบและทดสอบ CLI ของ Firebase

หลังจากติดตั้ง CLI คุณต้องตรวจสอบสิทธิ์ จากนั้นคุณจะยืนยันได้ โดยแสดงรายการโปรเจ็กต์ Firebase

  1. เข้าสู่ระบบ Firebase โดยใช้บัญชี Google โดยเรียกใช้รายการต่อไปนี้ คำสั่ง:

    firebase login

    คำสั่งนี้จะเชื่อมต่อเครื่องภายในของคุณกับ Firebase และให้สิทธิ์ สิทธิ์เข้าถึงโปรเจ็กต์ Firebase

  2. ทดสอบว่า CLI ได้รับการติดตั้งอย่างถูกต้องและเข้าถึงบัญชีของคุณโดย แสดงรายการโปรเจ็กต์ Firebase ของคุณ เรียกใช้คำสั่งต่อไปนี้

    firebase projects:list

    รายการที่แสดงควรเหมือนกับโปรเจ็กต์ Firebase ที่แสดงใน คอนโซล Firebase

อัปเดตเป็น CLI เวอร์ชันล่าสุด

โดยทั่วไปคุณต้องการใช้ Firebase CLI เวอร์ชันล่าสุด

วิธีอัปเดตเวอร์ชัน CLI ขึ้นอยู่กับระบบปฏิบัติการและวิธีที่คุณใช้ ติดตั้ง CLI

Windows

macOS

  • สคริปต์การติดตั้งอัตโนมัติ: เรียกใช้ curl -sL https://firebase.tools | upgrade=true bash
  • ไบนารีแบบสแตนด์อโลน: ดาวน์โหลด เวอร์ชัน จากนั้นจ่าย แทนที่ในระบบของคุณได้
  • npm: เรียกใช้ npm install -g firebase-tools

Linux

  • สคริปต์การติดตั้งอัตโนมัติ: เรียกใช้ curl -sL https://firebase.tools | upgrade=true bash
  • ไบนารีแบบสแตนด์อโลน: ดาวน์โหลด เวอร์ชัน จากนั้นจ่าย แทนที่ในระบบของคุณได้
  • npm: เรียกใช้ npm install -g firebase-tools

ใช้ CLI กับระบบ CI

CLI ของ Firebase ต้องใช้เบราว์เซอร์เพื่อดำเนินการตรวจสอบสิทธิ์ให้เสร็จสมบูรณ์ แต่ CLI เข้ากันได้กับ CI และสภาพแวดล้อมแบบไม่มีส่วนหัวอื่นๆ อย่างสมบูรณ์

  1. ในคอมพิวเตอร์ที่มีเบราว์เซอร์ ติดตั้ง Firebase CLI

  2. เริ่มขั้นตอนการลงชื่อเข้าใช้โดยเรียกใช้คำสั่งต่อไปนี้

    firebase login:ci
  3. ไปที่ URL ที่ระบุ จากนั้นเข้าสู่ระบบโดยใช้บัญชี Google

  4. พิมพ์ ใหม่ โทเค็นการรีเฟรช เซสชัน CLI ปัจจุบันจะไม่ได้รับผลกระทบ

  5. จัดเก็บโทเค็นเอาต์พุตด้วยวิธีที่ปลอดภัยแต่เข้าถึงได้ในระบบ CI

  6. ใช้โทเค็นนี้เมื่อเรียกใช้คำสั่ง firebase คุณสามารถใช้ ตัวเลือก 2 รายการต่อไปนี้

    • ตัวเลือกที่ 1: จัดเก็บโทเค็นเป็นตัวแปรสภาพแวดล้อม FIREBASE_TOKEN ระบบจะใช้โทเค็นโดยอัตโนมัติ

    • ตัวเลือกที่ 2: เรียกใช้คำสั่ง firebase ทั้งหมดด้วยคำสั่ง --token TOKEN Flag ในระบบ CI
      ตามลำดับความสำคัญในการโหลดโทเค็น: Flag, สภาพแวดล้อม ตัวแปร Firebase ที่ต้องการ

เริ่มต้นโปรเจ็กต์ Firebase

งานทั่วไปหลายอย่างที่ทำโดยใช้ CLI เช่น การทำให้ใช้งานได้ใน Firebase ต้องมีไดเรกทอรีโปรเจ็กต์ คุณสร้างไดเรกทอรีโปรเจ็กต์ โดยใช้คำสั่ง firebase init โดยปกติแล้วไดเรกทอรีโปรเจ็กต์จะเหมือนกัน เป็นรากควบคุมแหล่งที่มา และหลังจากเรียกใช้ firebase init ค่า ไดเรกทอรีมีการกำหนดค่า firebase.json

หากต้องการเริ่มต้นโปรเจ็กต์ Firebase ใหม่ ให้เรียกใช้คำสั่งต่อไปนี้จากภายใน ไดเรกทอรีของแอป

firebase init

คำสั่ง firebase init จะนำคุณเข้าสู่การตั้งค่าไดเรกทอรีโปรเจ็กต์ และผลิตภัณฑ์ Firebase บางรายการ ในระหว่างการเริ่มต้นโปรเจ็กต์ CLI ของ Firebase ขอให้คุณทำงานต่อไปนี้ให้เสร็จสมบูรณ์

  • เลือกผลิตภัณฑ์ Firebase ที่ต้องการตั้งค่าในโปรเจ็กต์ Firebase

    ขั้นตอนนี้จะแจ้งให้คุณตั้งการกำหนดค่าสำหรับไฟล์เฉพาะสำหรับ ผลิตภัณฑ์ที่เลือกไว้ สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดค่าเหล่านี้ โปรดดูที่ เอกสารของผลิตภัณฑ์ที่เฉพาะเจาะจง (เช่น Hosting) โปรดทราบว่า เรียกใช้ firebase init ในภายหลังได้เสมอเพื่อตั้งค่าผลิตภัณฑ์ Firebase เพิ่มเติม

  • เลือกโปรเจ็กต์ Firebase เริ่มต้น

    ขั้นตอนนี้จะเชื่อมโยงไดเรกทอรีโครงการปัจจุบันกับโครงการ Firebase ดังนั้น ที่คำสั่งเฉพาะโปรเจ็กต์ (เช่น firebase deploy) จะทำงานกับ โปรเจ็กต์ Firebase ที่เหมาะสม

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

ในช่วงท้ายของการเริ่มต้น Firebase จะสร้าง ที่รูทของไดเรกทอรีแอปในเครื่อง

  • ไฟล์การกำหนดค่า firebase.json ที่แสดง การกำหนดค่าโปรเจ็กต์ของคุณ

  • ไฟล์ .firebaserc ที่จัดเก็บโปรเจ็กต์ของคุณ aliases

ไฟล์ firebase.json

คำสั่ง firebase init จะสร้าง firebase.json ในรูทของไดเรกทอรีโปรเจ็กต์

ต้องใช้ไฟล์ firebase.json เพื่อ ทำให้เนื้อหาใช้งานได้ด้วย Firebase CLI เนื่องจากมีการระบุ ไฟล์และการตั้งค่าใดจากไดเรกทอรีโปรเจ็กต์ที่ทำให้ใช้งานได้กับ โปรเจ็กต์ Firebase เนื่องจากการตั้งค่าบางอย่างสามารถกําหนดได้ในโปรเจ็กต์ของคุณ หรือ Firebase โปรดตรวจสอบว่าคุณแก้ปัญหาที่อาจเกิดขึ้น ความขัดแย้งในการทำให้ใช้งานได้

คุณสามารถกำหนดค่าตัวเลือกส่วนใหญ่ของ Firebase Hosting ได้ ในไฟล์ firebase.json โดยตรง อย่างไรก็ตาม สำหรับ บริการ Firebase ที่ทำให้ใช้งานได้ด้วย Firebase CLI คำสั่ง firebase init จะสร้างไฟล์เฉพาะที่คุณสามารถกำหนดการตั้งค่าได้ สำหรับบริการเหล่านั้น เช่น ไฟล์ index.js สำหรับ Cloud Functions คุณสามารถ ตั้งค่า Hooks ล่วงหน้าหรือหลังจากทำให้ใช้งานได้ในไฟล์ firebase.json ด้วย

ต่อไปนี้เป็นตัวอย่างไฟล์ firebase.json ที่มีการตั้งค่าเริ่มต้นหากคุณ เลือก Firebase Hosting, Cloud Firestore และ Cloud Functions for Firebase (ด้วยการเลือกแหล่งที่มาและ Lint ของ TypeScript ไว้) ระหว่างการเริ่มต้น

{
  "hosting": {
    "public": "public",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ]
  },
  "firestore": {
      "rules": "firestore.rules",
      "indexes": "firestore.indexes.json"
  },
  "functions": {
    "predeploy": [
      "npm --prefix \"$RESOURCE_DIR\" run lint",
      "npm --prefix \"$RESOURCE_DIR\" run build"
    ]
  }
}

แม้ว่าระบบจะใช้ firebase.json โดยค่าเริ่มต้น คุณก็ส่ง แฟล็ก --config PATH เพื่อระบุทางเลือก ใหม่

การกำหนดค่าสำหรับฐานข้อมูล Cloud Firestore หลายรายการ

เมื่อคุณเรียกใช้ firebase init ไฟล์ firebase.json ของคุณจะมีไฟล์เดียว คีย์ firestore ที่สอดคล้องกับฐานข้อมูลเริ่มต้นของโปรเจ็กต์ตามที่แสดง ที่ด้านบน

หากโปรเจ็กต์มีฐานข้อมูล Cloud Firestore หลายรายการ ให้แก้ไข firebase.json เพื่อเชื่อมโยง Cloud Firestore Security Rules และ ไฟล์ต้นทางของดัชนีฐานข้อมูลที่มีแต่ละฐานข้อมูล แก้ไขไฟล์ด้วย อาร์เรย์ JSON ที่มี 1 รายการสำหรับแต่ละฐานข้อมูล

      "firestore": [
        {
          "database": "(default)",
          "rules": "firestore.default.rules",
          "indexes": "firestore.default.indexes.json"
        },
        {
          "database": "ecommerce",
          "rules": "firestore.ecommerce.rules",
          "indexes": "firestore.ecommerce.indexes.json"
        }
      ],

ไฟล์ Cloud Functions รายการที่ไม่ต้องสนใจเมื่อทำให้ใช้งานได้

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

รายการไฟล์ที่ละเว้นโดยค่าเริ่มต้นซึ่งแสดงในรูปแบบ JSON มีดังนี้

"ignore": [
  ".git",
  ".runtimeconfig.json",
  "firebase-debug.log",
  "firebase-debug.*.log",
  "node_modules"
]

หากคุณเพิ่มค่าที่กำหนดเองสำหรับ ignore ใน firebase.json โปรด อย่าลืมเก็บ (หรือเพิ่ม ถ้าไม่มี) รายการไฟล์ที่แสดงข้างต้นไว้

จัดการชื่อแทนของโปรเจ็กต์

คุณเชื่อมโยงโปรเจ็กต์ Firebase หลายโปรเจ็กต์กับไดเรกทอรีโปรเจ็กต์เดียวกันได้ เช่น คุณอาจต้องการใช้โปรเจ็กต์ Firebase 1 โปรเจ็กต์สำหรับการทดลองใช้และอีกโปรเจ็กต์หนึ่ง สำหรับเวอร์ชันที่ใช้งานจริง เมื่อใช้สภาพแวดล้อมโปรเจ็กต์ที่แตกต่างกัน คุณจะยืนยันการเปลี่ยนแปลงได้ ก่อนทำให้ใช้งานได้จริง คำสั่ง firebase use ช่วยให้คุณเปลี่ยน ระหว่างชื่อแทน รวมทั้งสร้างชื่อแทนใหม่

เพิ่มชื่อแทนโปรเจ็กต์

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

firebase use --add

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

ใช้ชื่อแทนโปรเจ็กต์

หากต้องการใช้ชื่อแทนโปรเจ็กต์ Firebase ที่มอบหมาย ให้เรียกใช้คำสั่งต่อไปนี้จาก ภายในไดเรกทอรีโปรเจ็กต์ของคุณ

คำสั่ง คำอธิบาย
firebase use ดูรายการชื่อแทนที่กำหนดไว้ในปัจจุบันสำหรับไดเรกทอรีโปรเจ็กต์ของคุณ
firebase use \
PROJECT_ID|ALIAS
สั่งการคำสั่งทั้งหมดให้ทำงานกับโปรเจ็กต์ Firebase ที่ระบุ
CLI ใช้โปรเจ็กต์นี้เป็น "โปรเจ็กต์ที่ใช้งานอยู่" ในปัจจุบัน
firebase use --clear ล้างโปรเจ็กต์ที่ใช้งานอยู่

เรียกใช้ firebase use PROJECT_ID|ALIAS เพื่อตั้งค่า โปรเจ็กต์ที่ใช้งานอยู่ใหม่ก่อนที่จะเรียกใช้คำสั่ง CLI อื่นๆ

firebase use \
--unalias PROJECT_ALIAS
นำชื่อแทนออกจากไดเรกทอรีโปรเจ็กต์

คุณสามารถลบล้างสิ่งที่กําลังใช้เป็นโปรเจ็กต์ที่ใช้งานอยู่ในปัจจุบันได้โดยส่ง แฟล็ก --project ด้วยคำสั่ง CLI เช่น คุณสามารถตั้งค่า CLI เพื่อทำงานกับโปรเจ็กต์ Firebase ที่คุณได้กำหนด staging ชื่อแทน ถ้าต้องการเรียกใช้คำสั่งเดียวกับโปรเจ็กต์ Firebase ที่ คุณได้กำหนดชื่อแทน prod แล้ว คุณจะสามารถเรียกใช้ได้ ตัวอย่างเช่น firebase deploy --project=prod

การควบคุมแหล่งที่มาและชื่อแทนโปรเจ็กต์

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

หากคุณมีโครงการพัฒนาซอฟต์แวร์สําหรับการใช้งานเท่านั้น คุณสามารถเลือก แฟล็ก --project พร้อมกับคำสั่งหรือการเรียกใช้แต่ละรายการ firebase use PROJECT_ID โดยไม่กำหนดชื่อแทนให้ โปรเจ็กต์ Firebase

แสดงและทดสอบโปรเจ็กต์ Firebase ในเครื่อง

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

เรียกใช้คำสั่งต่อไปนี้จากรูทของไดเรกทอรีโปรเจ็กต์ในเครื่องหากคุณ ต้องการดำเนินการอย่างใดอย่างหนึ่งต่อไปนี้

firebase serve --only hosting

จำลองโปรเจ็กต์โดยใช้ฟังก์ชัน HTTP local

เรียกใช้คำสั่งต่อไปนี้จากไดเรกทอรีโปรเจ็กต์ของคุณเพื่อจำลอง ที่ใช้ฟังก์ชัน HTTP local

  • หากต้องการจำลองฟังก์ชัน HTTP และการโฮสต์สำหรับการทดสอบใน URL ภายใน ให้ใช้ คำสั่งต่อไปนี้

    firebase serve
    firebase serve --only functions,hosting // uses a flag
  • หากต้องการจำลองเฉพาะฟังก์ชัน HTTP ให้ใช้คำสั่งต่อไปนี้

    firebase serve --only functions

ทดสอบจากอุปกรณ์อื่นในเครือข่ายเดียวกัน

โดยค่าเริ่มต้น firebase serve จะตอบกลับคำขอจาก localhost เท่านั้น ช่วงเวลานี้ หมายความว่าคุณจะสามารถเข้าถึงเนื้อหาที่โฮสต์ไว้จากเว็บของคอมพิวเตอร์ของคุณได้ เบราว์เซอร์แต่ไม่ได้มาจากอุปกรณ์อื่นๆ ในเครือข่ายของคุณ หากคุณต้องการทดสอบจาก ในอุปกรณ์อื่นๆ ให้ใช้แฟล็ก --host ดังนี้

firebase serve --host 0.0.0.0  // accepts requests to any host

ทำให้ใช้งานได้กับโปรเจ็กต์ Firebase

CLI ของ Firebase จัดการการติดตั้งใช้งานโค้ดและเนื้อหาใน Firebase ซึ่งได้แก่

  • เว็บไซต์ Firebase Hosting รุ่นใหม่ของคุณ
  • Cloud Functions for Firebase ใหม่ ที่อัปเดต หรือที่มีอยู่
  • กฎสำหรับ Firebase Realtime Database
  • กฎสำหรับ Cloud Storage for Firebase
  • กฎสำหรับ Cloud Firestore
  • ดัชนีสำหรับ Cloud Firestore

หากต้องการทำให้โปรเจ็กต์ Firebase ใช้งานได้ ให้เรียกใช้คำสั่งต่อไปนี้จากโปรเจ็กต์ของคุณ ไดเรกทอรี:

firebase deploy

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

firebase deploy -m "Deploying the best new feature ever."

โปรดคํานึงถึงสิ่งต่อไปนี้เมื่อใช้คําสั่ง firebase deploy

  • หากต้องการปรับใช้ทรัพยากรจากไดเรกทอรีโปรเจ็กต์ ไดเรกทอรีโปรเจ็กต์ ต้องมีไฟล์ firebase.json ไฟล์นี้ ที่สร้างขึ้นโดยอัตโนมัติสำหรับคุณโดย firebase init

  • โดยค่าเริ่มต้น firebase deploy จะสร้างรุ่นสำหรับทรัพยากรที่ทำให้ใช้งานได้ทั้งหมด ในไดเรกทอรีโปรเจ็กต์ หากต้องการทำให้บริการหรือฟีเจอร์ Firebase ที่เฉพาะเจาะจงใช้งานได้ ใช้การทำให้ใช้งานได้บางส่วน

ความขัดแย้งของการทำให้ใช้งานได้สำหรับกฎความปลอดภัย

สำหรับ Firebase Realtime Database, Cloud Storage for Firebase และ Cloud Firestore คุณจะกำหนดกฎความปลอดภัยได้ในไดเรกทอรีโปรเจ็กต์ในเครื่องหรือใน คอนโซล Firebase

อีกทางเลือกหนึ่งในการป้องกันความขัดแย้งของการทำให้ใช้งานได้คือ ใช้การทำให้ใช้งานได้บางส่วน และกำหนดกฎใน คอนโซล Firebase

โควต้าการทำให้ใช้งานได้

อาจเป็นไปได้ (แต่อาจไม่เกิดขึ้นก็ได้) ที่อาจใช้เกินโควต้าที่จำกัด อัตราหรือปริมาณการดำเนินการทำให้ Firebase ใช้งานได้ ตัวอย่างเช่น เมื่อ การทำให้ฟังก์ชันจำนวนมากใช้งานได้จำนวนมาก คุณอาจได้รับ HTTP 429 Quota ข้อความแสดงข้อผิดพลาด ในการแก้ปัญหาดังกล่าว ให้ลอง โดยใช้การติดตั้งใช้งานบางส่วน

ย้อนกลับการทำให้ใช้งานได้

คุณสามารถย้อนกลับการทำให้ใช้งานได้ของ Firebase Hosting จาก Firebase Hosting โดยเลือก การดำเนินการย้อนกลับสำหรับรุ่นที่ต้องการ

ขณะนี้ยังย้อนกลับรุ่นของกฎความปลอดภัยสำหรับ Firebase Realtime Database, Cloud Storage for Firebase หรือ Cloud Firestore

ทำให้บริการ Firebase บางอย่างใช้งานได้

หากต้องการทำให้บริการหรือฟีเจอร์ Firebase บางรายการใช้งานได้ ให้ใช้ รายการที่คั่นด้วยคอมมาในแฟล็กของคำสั่ง firebase deploy ตัวอย่างเช่น คำสั่งต่อไปนี้ทำให้เนื้อหา Firebase Hosting ใช้งานได้และ กฎความปลอดภัย Cloud Storage ข้อ

firebase deploy --only hosting,storage

ตารางต่อไปนี้แสดงบริการและฟีเจอร์ที่ใช้ได้บางส่วน ของการทำให้ใช้งานได้ ชื่อในแฟล็กจะตรงกับคีย์ใน firebase.json

ไวยากรณ์การแจ้งว่าไม่เหมาะสม มีการนำบริการหรือฟีเจอร์ไปใช้งาน
--only hosting เนื้อหาภาษาFirebase Hosting
--only database กฎ Firebase Realtime Database รายการ
--only storage กฎ Cloud Storage for Firebase รายการ
--only firestore กฎ Cloud Firestore ข้อและจะจัดทำดัชนีสำหรับฐานข้อมูลที่กำหนดค่าทั้งหมด
--only functions Cloud Functions for Firebase (อาจมีแฟล็กนี้ในเวอร์ชันที่เฉพาะเจาะจงมากขึ้น)

ทำให้ฟังก์ชันที่เฉพาะเจาะจงใช้งานได้

เมื่อทำให้ฟังก์ชันใช้งานได้ คุณจะกำหนดเป้าหมายฟังก์ชันเฉพาะได้ เช่น

firebase deploy --only functions:function1
firebase deploy --only functions:function1,functions:function2

อีกทางเลือกหนึ่งคือจัดกลุ่มฟังก์ชันเป็นกลุ่มส่งออกใน /functions/index.js ไฟล์ ฟังก์ชันการจัดกลุ่มช่วยให้คุณทำให้ โดยใช้คำสั่งเดียว

ตัวอย่างเช่น คุณสามารถเขียนฟังก์ชันต่อไปนี้เพื่อกำหนด groupA และ groupB:

var functions = require('firebase-functions/v1');

exports.groupA = {
  function1: functions.https.onRequest(...),
  function2: functions.database.ref('\path').onWrite(...)
}
exports.groupB = require('./groupB');

ในตัวอย่างนี้ ไฟล์ functions/groupB.js ที่แยกต่างหากจะมี ฟังก์ชันที่กำหนดฟังก์ชันใน groupB โดยเฉพาะ เช่น

var functions = require('firebase-functions/v1');

exports.function3 = functions.storage.object().onChange(...);
exports.function4 = functions.analytics.event('in_app_purchase').onLog(...);

ในตัวอย่างนี้ คุณสามารถทำให้ฟังก์ชัน groupA ทั้งหมดใช้งานได้โดยการเรียกใช้ฟังก์ชัน คำสั่งต่อไปนี้จากไดเรกทอรีโปรเจ็กต์ของคุณ:

firebase deploy --only functions:groupA

หรือคุณสามารถกำหนดเป้าหมายฟังก์ชันเฉพาะภายในกลุ่มโดยเรียกใช้ฟังก์ชันต่อไปนี้ คำสั่ง:

firebase deploy --only functions:groupA.function1,groupB.function4

ลบฟังก์ชัน

Firebase CLI รองรับคำสั่งและตัวเลือกต่อไปนี้สำหรับ ลบฟังก์ชันที่ทำให้ใช้งานได้ก่อนหน้านี้

  • ลบฟังก์ชันทั้งหมดที่ตรงกับชื่อที่ระบุในทุกภูมิภาค:

    firebase functions:delete FUNCTION-1_NAME

  • ลบฟังก์ชันที่ระบุซึ่งทำงานอยู่ในภูมิภาคที่ไม่ใช่ค่าเริ่มต้น

    firebase functions:delete FUNCTION-1_NAME --region REGION_NAME

  • ลบฟังก์ชันมากกว่า 1 รายการ:

    firebase functions:delete FUNCTION-1_NAME FUNCTION-2_NAME

  • ลบกลุ่มฟังก์ชันที่ระบุ

    firebase functions:delete GROUP_NAME

  • ข้ามข้อความแจ้งการยืนยัน:

    firebase functions:delete FUNCTION-1_NAME --force

ตั้งค่างานที่ใช้สคริปต์ล่วงหน้าและหลังจากทำให้ใช้งานได้

คุณสามารถเชื่อมต่อสคริปต์ Shell กับคำสั่ง firebase deploy เพื่อดำเนินการ งานล่วงหน้าหรือหลังการปรับใช้ ตัวอย่างเช่น สคริปต์การติดตั้งใช้งานล่วงหน้า แปลงโค้ด TypeScript เป็น JavaScript และ Hook ที่หลังจากติดตั้งใช้งานสามารถแจ้งเตือนได้ ผู้ดูแลเนื้อหาเว็บไซต์ใหม่จะทำให้ใช้งานได้กับ Firebase Hosting

หากต้องการตั้งค่า Hooks ที่นำส่งล่วงหน้าหรือหลังจากติดตั้งใช้งาน ให้เพิ่มสคริปต์ Bash ลงใน firebase.json คุณสามารถกำหนด สคริปต์สั้นๆ โดยตรงในไฟล์ firebase.json หรือคุณสามารถอ้างอิง ไฟล์ที่อยู่ในไดเรกทอรีโปรเจ็กต์

ตัวอย่างเช่น สคริปต์ต่อไปนี้คือนิพจน์ firebase.json สำหรับ งานหลังทำให้ใช้งานได้ที่ส่งข้อความ Slack เมื่อการทำให้ใช้งานได้เสร็จสมบูรณ์ไปยัง Firebase Hosting

"hosting": {
  // ...

  "postdeploy": "./messageSlack.sh 'Just deployed to Firebase Hosting'",
  "public": "public"
}

ไฟล์สคริปต์ messageSlack.sh อยู่ในไดเรกทอรีและรูปแบบของโปรเจ็กต์ ดังนี้

curl -X POST -H 'Content-type: application/json' --data '{"text":"$1"}'
     \https://SLACK_WEBHOOK_URL

คุณสามารถตั้งค่าฮุก predeploy และ postdeploy สำหรับ ชิ้นงานที่นำไปใช้ได้ โปรดทราบว่าการเรียกใช้ firebase deploy จะทริกเกอร์งานล่วงหน้าและหลังจากทำให้ใช้งานได้ทั้งหมดตามที่กำหนดไว้ใน firebase.json ไฟล์ เรียกใช้เฉพาะงานที่เกี่ยวข้องกับ Firebase ทั้งหมด ให้ใช้คำสั่งการติดตั้งใช้งานบางส่วน

ฮุก predeploy และ postdeploy พิมพ์เอาต์พุตมาตรฐานและข้อผิดพลาด สตรีมของสคริปต์ไปยังเทอร์มินัล สำหรับกรณีที่ส่งไม่สำเร็จ โปรดสังเกตข้อมูลต่อไปนี้

  • หากฮุกที่ทำให้ใช้งานได้ไม่สำเร็จตามที่คาดไว้ ระบบจะยกเลิกการทำให้ใช้งานได้
  • หากการติดตั้งใช้งานล้มเหลวไม่ว่าด้วยสาเหตุใดก็ตาม ระบบจะไม่ทริกเกอร์ฮุกหลังจากการติดตั้งใช้งาน

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

ภายในสคริปต์ที่ทำงานใน Hooks ก่อนทำให้ใช้งานได้และหลังจากทำให้ใช้งานได้แล้ว ตัวแปรสภาพแวดล้อมที่ใช้ได้มีดังนี้

  • $GCLOUD_PROJECT: รหัสโปรเจ็กต์ที่ใช้งานอยู่
  • $PROJECT_DIR: ไดเรกทอรีรากที่มีไฟล์ firebase.json
  • $RESOURCE_DIR: (สำหรับสคริปต์ hosting และ functions เท่านั้น) ตำแหน่งของไดเรกทอรีที่มี Hosting หรือ ทรัพยากร Cloud Functions รายการที่จะทำให้ใช้งานได้

จัดการอินสแตนซ์ Realtime Database หลายรายการ

โปรเจ็กต์ Firebase มีได้ อินสแตนซ์ Firebase Realtime Database หลายรายการ โดย ตามค่าเริ่มต้น คำสั่ง CLI จะโต้ตอบกับอินสแตนซ์ฐานข้อมูลเริ่มต้นของคุณ

แต่คุณสามารถโต้ตอบกับอินสแตนซ์ฐานข้อมูลที่ไม่ใช่ค่าเริ่มต้นได้โดยใช้ แฟล็ก --instance DATABASE_NAME คำสั่งต่อไปนี้รองรับแฟล็ก --instance

  • firebase database:get
  • firebase database:profile
  • firebase database:push
  • firebase database:remove
  • firebase database:set
  • firebase database:update

การอ้างอิงคำสั่ง

คำสั่งการดูแลระบบ CLI

คำสั่ง คำอธิบาย
ความช่วยเหลือ แสดงข้อมูลความช่วยเหลือเกี่ยวกับ CLI หรือคำสั่งเฉพาะ
เริ่มต้น เชื่อมโยงและสร้างโปรเจ็กต์ Firebase ใหม่ในไดเรกทอรีปัจจุบัน คำสั่งนี้จะสร้าง firebase.json ในไดเรกทอรีปัจจุบัน
login ตรวจสอบสิทธิ์ CLI ในบัญชี Firebase ต้องมีสิทธิ์เข้าถึง เว็บเบราว์เซอร์
การเข้าสู่ระบบ CLI ในสภาพแวดล้อมระยะไกลที่ไม่อนุญาตให้เข้าถึง localhost ใช้ --no-localhost แจ้ง
login:ci สร้างโทเค็นการตรวจสอบสิทธิ์สำหรับใช้ในแบบไม่โต้ตอบ สภาพแวดล้อมการใช้งาน
ออกจากระบบ ออกจากระบบ CLI จากบัญชี Firebase
เปิด เปิดเบราว์เซอร์เพื่อดูทรัพยากรของโปรเจ็กต์ที่เกี่ยวข้อง
โปรเจ็กต์:รายการ แสดงรายการโปรเจ็กต์ Firebase ทั้งหมดที่คุณมีสิทธิ์เข้าถึง
การใช้งาน ตั้งค่าโปรเจ็กต์ Firebase ที่ใช้งานอยู่สำหรับ CLI
จัดการชื่อแทนโปรเจ็กต์

คำสั่งการจัดการโปรเจ็กต์

คำสั่ง คำอธิบาย
การจัดการโปรเจ็กต์ Firebase
projects:addfirebase เพิ่มทรัพยากร Firebase ไปยังโปรเจ็กต์ Google Cloud ที่มีอยู่
projects:create สร้างโปรเจ็กต์ Google Cloud ใหม่ แล้วเพิ่มทรัพยากร Firebase ไปยัง โปรเจ็กต์ใหม่
โปรเจ็กต์:รายการ แสดงรายการโปรเจ็กต์ Firebase ทั้งหมดที่คุณมีสิทธิ์เข้าถึง
การจัดการแอป Firebase (iOS, Android, เว็บ)
apps:สร้าง สร้างแอป Firebase ใหม่ในโปรเจ็กต์ที่ใช้งานอยู่
แอป:รายการ แสดงรายการแอป Firebase ที่ลงทะเบียนในโปรเจ็กต์ที่ใช้งานอยู่
แอป:sdkconfig พิมพ์การกำหนดค่าบริการของ Google ของแอป Firebase
ตั้งค่า:เว็บ เลิกใช้งานแล้ว แต่ให้ใช้ apps:sdkconfig และ ระบุ web เป็นอาร์กิวเมนต์แพลตฟอร์ม
การพิมพ์ การกำหนดค่าบริการของ Google ของเว็บแอป Firebase
การจัดการแฮชใบรับรอง SHA (Android เท่านั้น)
apps:android:sha:create \
SHA_HASH FIREBASE_APP_ID
เพิ่มแฮชใบรับรอง SHA ที่ระบุลงใน แอป Firebase บน Android
apps:android:sha:ลบ \
SHA_HASH FIREBASE_APP_ID
ลบแฮชใบรับรอง SHA ที่ระบุออกจาก แอป Firebase บน Android
apps:android:sha:list \
FIREBASE_APP_ID
แสดงรายการแฮชใบรับรอง SHA สำหรับที่ระบุ แอป Firebase บน Android

การติดตั้งใช้งานและการพัฒนาภายใน

คำสั่งเหล่านี้ช่วยให้คุณใช้งานและโต้ตอบกับเว็บไซต์ Firebase Hosting ได้

คำสั่ง คำอธิบาย
ติดตั้งใช้งาน ทำให้โค้ดและเนื้อหาจากไดเรกทอรีโครงการใช้งานได้เป็นค่าที่ใช้งานอยู่ สำหรับ Firebase Hosting ประเภท firebase.json ต้องระบุไฟล์การกำหนดค่า
บริการ เริ่มต้นเว็บเซิร์ฟเวอร์ภายในด้วยการกำหนดค่า Firebase Hosting สำหรับ Firebase Hosting ประเภท firebase.json ต้องระบุไฟล์การกำหนดค่า

คำสั่ง App Distribution รายการ

คำสั่ง คำอธิบาย
appdistribution:distribution \
--app FIREBASE_APP_ID
ทำให้ผู้ทดสอบสามารถใช้บิลด์ได้
appdistribution:testers:add เพิ่มผู้ทดสอบไปยังโปรเจ็กต์
appdistribution:testers:remove นำผู้ทดสอบออกจากโปรเจ็กต์

คำสั่ง App Hosting รายการ

คำสั่ง คำอธิบาย
apphosting:backends:create \
--โครงการ PROJECT_ID
--ตำแหน่ง REGION --แอป APP_ID
สร้างคอลเล็กชันของทรัพยากรที่มีการจัดการซึ่งลิงก์กับฐานของโค้ดเดียว ที่ประกอบขึ้นเป็นแบ็กเอนด์ App Hosting (ไม่บังคับ) ระบุ เว็บแอป Firebase ตามรหัสแอป Firebase
apphosting:backends:get \
BACKEND_ID --โครงการ PROJECT_ID
--ตำแหน่ง REGION
เรียกข้อมูลรายละเอียดที่เจาะจง ซึ่งรวมถึง URL สาธารณะของแบ็กเอนด์
apphosting:backends:list \
--โครงการ PROJECT_ID
เรียกข้อมูลรายการแบ็กเอนด์ที่ใช้งานอยู่ทั้งหมดที่เชื่อมโยงกับโปรเจ็กต์
firebase apphosting:backends:delete \
BACKEND_ID --โครงการ PROJECT_ID
--ตำแหน่ง REGION
ลบแบ็กเอนด์ออกจากโปรเจ็กต์
apphosting:secrets:set \
KEY --โครงการ PROJECT_ID
--สถานที่ REGION --ไฟล์ข้อมูล Data file
จัดเก็บเนื้อหาข้อมูลลับใน Secret Manager (ไม่บังคับ) เส้นทางของไฟล์ที่จะอ่านข้อมูลลับ ตั้งค่าเป็น _ เพื่ออ่าน ข้อมูลลับจากอินพุตมาตรฐาน
apphosting:secrets:grantaccess \
KEY --โครงการ PROJECT_ID BACKEND_ID
--ตำแหน่ง REGION
ให้สิทธิ์ แบ็กเอนด์ บัญชีบริการ เข้าถึงข้อมูลลับที่ให้ไว้เพื่อให้สามารถเข้าถึงโดย App Hosting ขณะสร้างหรือรันไทม์
apphosting:secrets:describe \
KEY --โปรเจ็กต์ PROJECT_ID
รับข้อมูลเมตาสำหรับข้อมูลลับและเวอร์ชันของข้อมูลลับ
firebase apphosting:secrets:access \

KEY[@version] --โปรเจ็กต์ PROJECT_ID
เข้าถึงค่าข้อมูลลับที่ระบุข้อมูลลับและเวอร์ชันของข้อมูลลับ ค่าเริ่มต้นคือเข้าถึงเวอร์ชันล่าสุด

คำสั่ง Authentication (การจัดการผู้ใช้)

คำสั่ง คำอธิบาย
auth:export ส่งออกบัญชีผู้ใช้ของโปรเจ็กต์ที่ใช้งานอยู่เป็นไฟล์ JSON หรือ CSV สำหรับ ดูรายละเอียดเพิ่มเติมได้ที่ auth:IMPORT และ auth:export
auth:นำเข้า นำเข้าบัญชีผู้ใช้จากไฟล์ JSON หรือ CSV ไปยัง ดูรายละเอียดเพิ่มเติมได้ที่ auth:IMPORT และ auth:export

คำสั่ง Cloud Firestore รายการ

คำสั่ง คำอธิบาย
firestore:locations

แสดงรายการตำแหน่งที่ใช้ได้สำหรับฐานข้อมูล Cloud Firestore ของคุณ

firestore:databases:create DATABASE_ID

สร้างอินสแตนซ์ฐานข้อมูลในโหมดดั้งเดิมในโปรเจ็กต์ Firebase

คำสั่งจะใช้แฟล็กต่อไปนี้

  • --location <ชื่อภูมิภาค> เพื่อระบุ ตำแหน่งการติดตั้งใช้งานสำหรับฐานข้อมูล โปรดทราบว่าคุณสามารถเรียกใช้ firebase Firestore:locations แสดงรายการที่พร้อมใช้งาน สถานที่ตั้ง ต้องระบุ
  • --delete-protection <deleteProtectionState> เพื่ออนุญาตหรือป้องกันการลบฐานข้อมูลที่ระบุ ค่าที่ถูกต้อง คือ ENABLED หรือ DISABLED ค่าเริ่มต้นคือ DISABLED
  • --point-in-time-recovery <PITRState> เป็น กำหนดว่าจะเปิดใช้การกู้คืนช่วงเวลาหรือไม่ ค่าที่ถูกต้องคือ ENABLED หรือ DISABLED ค่าเริ่มต้นคือ DISABLED ไม่บังคับ
firestore:databases:list

แสดงรายการฐานข้อมูลในโปรเจ็กต์ Firebase

firestore:databases:get DATABASE_ID

รับการกำหนดค่าฐานข้อมูลสำหรับฐานข้อมูลที่ระบุใน โปรเจ็กต์ Firebase

firestore:databases:update DATABASE_ID

อัปเดตการกำหนดค่าฐานข้อมูลของฐานข้อมูลที่ระบุใน โปรเจ็กต์ Firebase

ต้องได้รับแฟล็กอย่างน้อย 1 รายการ คำสั่งจะใช้แฟล็กต่อไปนี้

  • --delete-protection <deleteProtectionState> เพื่ออนุญาตหรือป้องกันการลบฐานข้อมูลที่ระบุ ค่าที่ถูกต้อง คือ ENABLED หรือ DISABLED ค่าเริ่มต้นคือ DISABLED
  • --point-in-time-recovery <PITRState> เป็น กำหนดว่าจะเปิดใช้การกู้คืนช่วงเวลาหรือไม่ ค่าที่ถูกต้องคือ ENABLED หรือ DISABLED ค่าเริ่มต้นคือ DISABLED ไม่บังคับ
firestore:databases:ลบ DATABASE_ID

ลบฐานข้อมูลในโปรเจ็กต์ Firebase

firestore:indexes

แสดงรายการดัชนีสำหรับฐานข้อมูลในโปรเจ็กต์ Firebase

คำสั่งดังกล่าวใช้แฟล็กต่อไปนี้

  • --ฐานข้อมูล DATABASE_ID ไปยัง ระบุชื่อฐานข้อมูลที่จะแสดงรายการดัชนี หากไม่ ที่ระบุ ดัชนีจะปรากฏสำหรับฐานข้อมูลเริ่มต้น
firestore:delete

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

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

คำสั่งดังกล่าวใช้แฟล็กต่อไปนี้

  • --ฐานข้อมูล DATABASE_ID เพื่อระบุชื่อฐานข้อมูลที่เอกสารจะถูกลบ ถ้า ไม่ได้ระบุไว้ เอกสารจะถูกลบออกจากฐานข้อมูลเริ่มต้น ไม่บังคับ

คำสั่ง Cloud Functions for Firebase รายการ

คำสั่ง คำอธิบาย
functions:config:clone โคลนสภาพแวดล้อมของโปรเจ็กต์อื่นลงใน Firebase ที่ใช้งานอยู่
functions:config:get ดึงข้อมูลการกำหนดค่าที่มีอยู่ของโปรเจ็กต์ที่ใช้งานอยู่ Cloud Functions
functions:config:set จัดเก็บค่าการกำหนดค่ารันไทม์ของโปรเจ็กต์ที่ใช้งานอยู่ Cloud Functions
functions:config:unset นำค่าออกจากการกำหนดค่ารันไทม์ของโปรเจ็กต์ที่ใช้งานอยู่
functions:log อ่านบันทึกจาก Cloud Functions ที่ทำให้ใช้งานได้แล้ว

ดูข้อมูลเพิ่มเติมได้ที่สภาพแวดล้อม เอกสารการกำหนดค่า

คำสั่ง Crashlytics รายการ

คำสั่ง คำอธิบาย
crashlytics:mappingfile:generateid \
--resource-file=PATH/TO/ANDROID_RESOURCE.XML
สร้างรหัสไฟล์การแมปที่ไม่ซ้ำกันในทรัพยากร Android ที่ระบุ (XML)
crashlytics:mappingfile:upload \
--app=FIREBASE_APP_ID \
--resource-file=PATH/TO/ANDROID_RESOURCE.XML \
PATH/TO/MAPPING_FILE.TXT
อัปโหลดไฟล์การแมป (TXT) ที่ใช้ร่วมกับ Proguard สำหรับแอปนี้ และเชื่อมโยงกับรหัสไฟล์การแมปที่ประกาศใน ไฟล์ทรัพยากร Android (XML)
crashlytics:symbols:upload \
--app=FIREBASE_APP_ID \
PATH/TO/SYMBOLS
สร้างไฟล์สัญลักษณ์ที่เข้ากันได้กับ Crashlytics สำหรับไลบรารีเนทีฟ ขัดข้องบน Android และอัปโหลดไปยังเซิร์ฟเวอร์ Firebase

คำสั่ง Extensions รายการ

คำสั่ง คำอธิบาย
ต่อ แสดงข้อมูลเกี่ยวกับวิธีใช้คำสั่ง Firebase Extensions
แสดงรายการอินสแตนซ์ของส่วนขยายที่ติดตั้งในโปรเจ็กต์ที่ใช้งานอยู่
ext:configure \
EXTENSION_INSTANCE_ID
กำหนดค่าค่าพารามิเตอร์ของอินสแตนซ์ส่วนขยายใหม่ใน ไฟล์ Manifest ของส่วนขยาย
ext:info \
PUBLISHER_ID/EXTENSION_ID
พิมพ์ข้อมูลโดยละเอียดเกี่ยวกับส่วนขยาย
ext:ติดตั้ง \
PUBLISHER_ID/EXTENSION_ID
เพิ่มส่วนขยายอินสแตนซ์ใหม่ลงใน ไฟล์ Manifest ของส่วนขยาย
ext:list แสดงรายการอินสแตนซ์ส่วนขยายทั้งหมดที่ติดตั้งในโปรเจ็กต์ Firebase
พิมพ์รหัสอินสแตนซ์สำหรับส่วนขยายแต่ละรายการ
ext:ถอนการติดตั้ง \
EXTENSION_INSTANCE_ID
นำอินสแตนซ์ส่วนขยายออกจาก ไฟล์ Manifest ของส่วนขยาย
ext:update \
EXTENSION_INSTANCE_ID
อัปเดตอินสแตนซ์ของส่วนขยายเป็นเวอร์ชันล่าสุดใน ไฟล์ Manifest ของส่วนขยาย
ext:ส่งออก ส่งออกอินสแตนซ์ของส่วนขยายที่ติดตั้งทั้งหมดจากโปรเจ็กต์ไปยัง ไฟล์ Manifest ของส่วนขยาย

คำสั่งของผู้เผยแพร่โฆษณา Extensions รายการ

คำสั่ง คำอธิบาย
ext:dev:init เริ่มต้นโครงสร้างโค้ดเบสสำหรับส่วนขยายใหม่ในรายการปัจจุบัน ไดเรกทอรี
ext:dev:list \
PUBLISHER_ID
พิมพ์รายการส่วนขยายทั้งหมดที่อัปโหลดโดยผู้เผยแพร่
ext:dev:register ลงทะเบียนโปรเจ็กต์ Firebase เป็น ส่วนขยายผู้เผยแพร่โฆษณา
ext:dev:deprecate \
PUBLISHER_ID/EXTENSION_ID \
VERSION_PREDICATE
เลิกใช้งาน เวอร์ชันส่วนขยายที่ตรงกับเวอร์ชันภาคแสดง
ภาคแสดงเวอร์ชันสามารถเป็นเวอร์ชันเดียวได้ (เช่น 1.0.0) หรือช่วงของเวอร์ชัน (เช่น >1.0.0)
หากไม่ได้ระบุเวอร์ชันล่วงหน้า เลิกใช้งานส่วนขยายนั้นทุกเวอร์ชัน
ext:dev:undeprecate \
PUBLISHER_ID/EXTENSION_ID \
VERSION_PREDICATE
เลิกใช้งาน เวอร์ชันส่วนขยายที่ตรงกับเวอร์ชันภาคแสดง
ภาคแสดงเวอร์ชันสามารถเป็นเวอร์ชันเดียวได้ (เช่น 1.0.0) หรือช่วงของเวอร์ชัน (เช่น >1.0.0)
หากไม่ได้ระบุเวอร์ชันล่วงหน้า ยกเลิกการเลิกใช้งานส่วนขยายนั้นทุกเวอร์ชัน
ext:dev:upload \
PUBLISHER_ID/EXTENSION_ID
อัปโหลดส่วนขยายเวอร์ชันใหม่
ext:dev:usage \
PUBLISHER_ID
แสดงจำนวนการติดตั้งและเมตริกการใช้งานสำหรับส่วนขยายที่อัปโหลดโดย ผู้เผยแพร่โฆษณา

คำสั่ง Hosting รายการ

คำสั่ง คำอธิบาย
hosting:disable

หยุดแสดงการเข้าชม Firebase Hosting สำหรับ Firebase ที่ใช้งานอยู่

URL Hosting ของโปรเจ็กต์จะแสดงข้อความ "ไม่พบเว็บไซต์" ข้อความ หลังจากเรียกใช้คำสั่งนี้

การจัดการเว็บไซต์ Hosting แห่ง
firebase Hosting:sites:create \
SITE_ID

สร้างเว็บไซต์ Hosting ใหม่ในโปรเจ็กต์ Firebase ที่ใช้งานอยู่โดยใช้ ระบุ SITE_ID

(ไม่บังคับ) ระบุเว็บแอป Firebase ที่มีอยู่เพื่อเชื่อมโยง กับเว็บไซต์ใหม่โดยส่งค่าสถานะต่อไปนี้ --app FIREBASE_APP_ID

firebase Hosting:sites:delete \
SITE_ID

ลบเว็บไซต์ Hosting ที่ระบุ

CLI จะแสดงข้อความแจ้งให้ยืนยันก่อนลบเว็บไซต์

(ไม่บังคับ) ข้ามข้อความแจ้งการยืนยันโดยการส่งผ่าน แฟล็กต่อไปนี้: -f หรือ --force

firebase Hosting:sites:get \
SITE_ID

เรียกดูข้อมูลเกี่ยวกับเว็บไซต์ Hosting ที่ระบุ

firebase Hosting:sites:list

แสดงรายการเว็บไซต์ทั้ง Hosting รายการสำหรับโปรเจ็กต์ Firebase ที่ใช้งานอยู่

การจัดการช่องตัวอย่าง
firebase Hosting:channel:create \
CHANNEL_ID

สร้างช่องทางแสดงตัวอย่างใหม่ใน default Hosting เว็บไซต์ที่ใช้ CHANNEL_ID

คำสั่งนี้ไม่ทำให้ใช้งานได้กับแชแนล

firebase Hosting:channel:delete \
CHANNEL_ID

ลบเวอร์ชันตัวอย่างที่ระบุ

คุณลบช่องที่เผยแพร่อยู่ของเว็บไซต์ไม่ได้

firebase Hosting:channel:deploy \
CHANNEL_ID

ทำให้เนื้อหา Hosting ใช้งานได้และกำหนดค่าเป็นที่ระบุ เวอร์ชันตัวอย่าง

หากยังไม่มีช่องทางแสดงตัวอย่าง คำสั่งนี้จะสร้าง ช่องในเว็บไซต์ Hosting เริ่มต้น ก่อนทำให้ใช้งานได้ในช่อง

firebase Hosting:channel:list แสดงรายการช่องทั้งหมด (รวมถึงช่อง "ถ่ายทอดสด") ค่าเริ่มต้น Hosting เว็บไซต์
firebase Hosting:channel:open \
CHANNEL_ID
เปิดเบราว์เซอร์ไปยัง URL ของช่องที่ระบุหรือแสดงผล URL ถ้าเปิดในเบราว์เซอร์ไม่ได้
การโคลนเวอร์ชัน
firebase Hosting:clone \
SOURCE_SITE_ID:SOURCE_CHANNEL_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

โคลนเวอร์ชันที่ใช้งานล่าสุดใน "แหล่งที่มา" ที่ระบุ ช่องไปยัง "เป้าหมาย" ที่ระบุ ช่องสัญญาณ

คำสั่งนี้จะใช้กับ "เป้าหมาย" ที่ระบุด้วย หาก "เป้าหมาย" ยังไม่มีแชแนล คำสั่งนี้จะสร้าง แสดงตัวอย่างแชแนลใน "เป้าหมาย" Hosting เว็บไซต์ก่อนทำให้ใช้งานได้กับ ช่อง

firebase Hosting:clone \
SOURCE_SITE_ID:@VERSION_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

โคลนเวอร์ชันที่ระบุไปยัง "เป้าหมาย" ที่ระบุ ช่องสัญญาณ

คำสั่งนี้จะใช้กับ "เป้าหมาย" ที่ระบุด้วย หาก "เป้าหมาย" ยังไม่มีแชแนล คำสั่งนี้จะสร้าง แสดงตัวอย่างแชแนลใน "เป้าหมาย" Hosting เว็บไซต์ก่อนทำให้ใช้งานได้กับ ช่อง

คุณสามารถค้นหา VERSION_ID ได้ใน หน้าแดชบอร์ด Hosting ของคอนโซล Firebase

คำสั่ง Realtime Database รายการ

โปรดทราบว่าคุณสร้างอินสแตนซ์ Realtime Database เริ่มต้นเริ่มต้นได้ใน คอนโซล Firebase หรือโดยการใช้firebase init ทั่วไป เวิร์กโฟลว์หรือ ขั้นตอน firebase init database

เมื่อสร้างอินสแตนซ์แล้ว คุณจะจัดการอินสแตนซ์เหล่านั้นได้ตามที่กล่าวไว้ใน จัดการอินสแตนซ์ Realtime Database หลายรายการ

คำสั่ง คำอธิบาย
database:get ดึงข้อมูลจากฐานข้อมูลของโปรเจ็กต์ที่ใช้งานอยู่และแสดงเป็น JSON รองรับการค้นหาข้อมูลที่จัดทำดัชนี
database:instances:create สร้างอินสแตนซ์ฐานข้อมูลที่มีชื่ออินสแตนซ์ที่ระบุ ยอมรับ ตัวเลือก --location สำหรับการสร้างฐานข้อมูลใน ภูมิภาค สำหรับชื่อภูมิภาคที่จะใช้กับตัวเลือกนี้ โปรดดู เลือกตำแหน่งสำหรับโปรเจ็กต์ หากไม่มีอินสแตนซ์ฐานข้อมูลสำหรับโปรเจ็กต์ปัจจุบัน คุณจะได้รับข้อความแจ้ง เพื่อเรียกใช้โฟลว์ firebase init เพื่อสร้างอินสแตนซ์
ฐานข้อมูล:อินสแตนซ์:รายการ แสดงรายการอินสแตนซ์ฐานข้อมูลทั้งหมดสำหรับโปรเจ็กต์นี้ ยอมรับ ตัวเลือก --location สำหรับการแสดงรายการฐานข้อมูลใน ภูมิภาค สำหรับชื่อภูมิภาคที่จะใช้กับตัวเลือกนี้ โปรดดู เลือกตำแหน่งสำหรับโปรเจ็กต์
ฐานข้อมูล:โปรไฟล์ สร้างโปรไฟล์ของการดำเนินการบนฐานข้อมูลของโปรเจ็กต์ที่ใช้งานอยู่ สำหรับ ดูรายละเอียดเพิ่มเติมได้ที่ การดำเนินการ Realtime Database ประเภท
ฐานข้อมูล:พุช พุชข้อมูลใหม่ไปยังรายการ ณ ตำแหน่งที่ระบุใน ฐานข้อมูลของโครงการ รับอินพุตจากไฟล์, STDIN หรือบรรทัดคำสั่ง อาร์กิวเมนต์
database:remove ลบข้อมูลทั้งหมดในตำแหน่งที่ระบุใน ฐานข้อมูล
ฐานข้อมูล:ชุด แทนที่ข้อมูลทั้งหมดในตำแหน่งที่ระบุใน ฐานข้อมูล รับอินพุตจากไฟล์, STDIN หรืออาร์กิวเมนต์บรรทัดคำสั่ง
ฐานข้อมูล:อัปเดต ทำการอัปเดตบางส่วน ณ ตำแหน่งที่ระบุใน ฐานข้อมูลของโครงการ รับอินพุตจากไฟล์, STDIN หรือบรรทัดคำสั่ง อาร์กิวเมนต์

คำสั่ง Remote Config รายการ

คำสั่ง คำอธิบาย
remoteconfig:versions:list \
--จำกัด NUMBER_OF_VERSIONS
แสดงรายการเทมเพลต 10 เวอร์ชันล่าสุด ระบุ 0 เพื่อแสดงผลเวอร์ชันที่มีอยู่ทั้งหมด หรือ ส่งตัวเลือก --limit เพื่อจำกัดจำนวน เวอร์ชันที่กำลังแสดงผล
remoteconfig:get \
--v, version_number VERSION_NUMBER
--o, เอาต์พุต FILENAME
รับเทมเพลตตามเวอร์ชัน (ค่าเริ่มต้นเป็นเวอร์ชันล่าสุด) และแสดงกลุ่มพารามิเตอร์ พารามิเตอร์ ชื่อเงื่อนไข และ ลงในตาราง นอกจากนี้ คุณยังเขียนเอาต์พุตไปยัง ไฟล์ที่ระบุด้วย -o, FILENAME
remoteconfig:rollback \
--v, version_number VERSION_NUMBER
--บังคับ
ย้อนกลับเทมเพลต Remote Config รายการเป็นเวอร์ชันก่อนหน้าที่ระบุ ตัวเลขหรือค่าเริ่มต้นเป็นเวอร์ชันก่อนหน้าก่อนหน้า (เวอร์ชันปัจจุบัน -1) หากไม่ผ่าน --force ระบบจะแสดงข้อความใช่/ไม่ใช่ ก่อนที่จะทำการย้อนกลับ