การอ้างอิง Firebase CLI

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

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

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

ติดตั้ง Firebase CLI

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

Windows macOS Linux

หน้าต่าง

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

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

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

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

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

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

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

    1. ทำให้ไบนารีสั่งการได้โดยเรียกใช้ chmod +x ./firebase_tools
    2. เพิ่มเส้นทางของไบนารีลงใน PATH
  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

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

หลังจากติดตั้ง 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

Firebase CLI ต้องใช้เบราว์เซอร์เพื่อตรวจสอบสิทธิ์ให้เสร็จสมบูรณ์ แต่ 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 ในระบบ CI
      นี่คือลำดับความสำคัญสำหรับการโหลดโทเค็น: แฟล็ก, ตัวแปรสภาพแวดล้อม, โปรเจ็กต์ Firebase ที่ต้องการ

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

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

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

firebase init

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

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

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

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

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

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

ในตอนท้ายของการเริ่มต้น Firebase จะสร้าง 2 ไฟล์ต่อไปนี้โดยอัตโนมัติที่รูทของไดเรกทอรีแอปในเครื่อง

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

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

ไฟล์ firebase.json

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

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

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

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

{
  "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 และไฟล์แหล่งที่มาของดัชนีฐานข้อมูลที่แตกต่างกันกับฐานข้อมูลแต่ละรายการ แก้ไขไฟล์ด้วยอาร์เรย์ 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 หนึ่งสำหรับการทดลองใช้และอีกโปรเจ็กต์หนึ่งสำหรับเวอร์ชันที่ใช้งานจริง เมื่อใช้สภาพแวดล้อมของโปรเจ็กต์ที่แตกต่างกัน คุณจะตรวจสอบการเปลี่ยนแปลงก่อนทำให้ใช้งานได้เป็นเวอร์ชันที่ใช้งานจริงได้ คำสั่ง 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 ภายใน

เรียกใช้คำสั่งต่อไปนี้จากไดเรกทอรีโปรเจ็กต์เพื่อจำลองโปรเจ็กต์โดยใช้ฟังก์ชัน 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

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

  • เว็บไซต์โฮสติ้งของ Firebase เวอร์ชันใหม่
  • Cloud Functions for Firebase ใหม่ อัปเดต หรือมีอยู่แล้ว
  • กฎสำหรับฐานข้อมูลเรียลไทม์ของ Firebase
  • กฎสำหรับ Cloud Storage สำหรับ Firebase
  • กฎสำหรับ Cloud Firestore
  • ดัชนีสำหรับ Cloud Firestore

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

firebase deploy

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

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

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

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

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

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

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

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

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

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

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

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

ขณะนี้คุณยังย้อนกลับเวอร์ชันกฎความปลอดภัยสำหรับฐานข้อมูลเรียลไทม์ของ Firebase, Cloud Storage สำหรับ Firebase หรือ Cloud Firestore ไม่ได้

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

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

firebase deploy --only hosting,storage

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

ไวยากรณ์การแจ้งว่าไม่เหมาะสม ติดตั้งใช้งานบริการหรือฟีเจอร์แล้ว
--only hosting เนื้อหาโฮสติ้งของ Firebase
--only database กฎฐานข้อมูลเรียลไทม์ของ Firebase
--only storage กฎ Cloud Storage สำหรับ 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');

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');

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 และฮุกหลังการทำให้ใช้งานได้สามารถแจ้งเตือนผู้ดูแลระบบเกี่ยวกับเนื้อหาเว็บไซต์ใหม่ที่ทำให้ใช้งานได้ในโฮสติ้งของ Firebase

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

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

"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 จะพิมพ์เอาต์พุตมาตรฐานและสตรีมข้อผิดพลาดของสคริปต์ไปยังเทอร์มินัล สำหรับกรณีที่ไม่สำเร็จ โปรดทราบข้อมูลต่อไปนี้

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

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

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

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

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

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

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

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

การทำให้ใช้งานได้และการพัฒนาในท้องถิ่น

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

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

คำสั่ง App Distribution

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

คำสั่งการตรวจสอบสิทธิ์ (การจัดการผู้ใช้)

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

คำสั่ง Cloud Firestore

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

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

firestore:databases:create DATABASE_ID

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

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

  • --location <region name> เพื่อระบุตำแหน่งการทำให้ใช้งานได้สำหรับฐานข้อมูล โปรดทราบว่าคุณเรียกใช้ firebasefirestore: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

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

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

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

firestore:indexes

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

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

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

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

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

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

  • --database 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
อัปโหลดไฟล์การแมปที่เข้ากันได้กับ Proguard (TXT) สำหรับแอปนี้ และเชื่อมโยงกับรหัสไฟล์การแมปที่ประกาศในไฟล์ทรัพยากร Android (XML) ที่ระบุ
crashlytics:symbols:upload \
--app=FIREBASE_APP_ID \
PATH/TO/SYMBOLS
สร้างไฟล์สัญลักษณ์ที่เข้ากันได้กับ Crashlytics สำหรับไลบรารีเนทีฟใน Android และอัปโหลดไปยังเซิร์ฟเวอร์ Firebase

คำสั่งของส่วนขยาย

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

คำสั่งของผู้เผยแพร่ส่วนขยาย

คำสั่ง คำอธิบาย
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
แสดงจำนวนการติดตั้งและเมตริกการใช้งานสำหรับส่วนขยายที่อัปโหลดโดยผู้เผยแพร่โฆษณา

คำสั่งโฮสติ้ง

คำสั่ง คำอธิบาย
โฮสติ้ง:ปิดใช้

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

URL โฮสติ้งของโปรเจ็กต์จะแสดงข้อความ "Site Not Found" หลังจากเรียกใช้คำสั่งนี้

การจัดการเว็บไซต์โฮสติ้ง
firebase Hosting:sites:สร้าง \
SITE_ID

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

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

firebase Hosting:sites:ลบ \
SITE_ID

ลบเว็บไซต์โฮสติ้งที่ระบุ

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

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

firebase Hosting:sites:get \
SITE_ID

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

firebase Hosting:sites:list

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

การจัดการช่องทางพรีวิว
firebase Hosting:channel:create \
CHANNEL_ID

สร้างช่องทางตัวอย่างใหม่ในเว็บไซต์โฮสติ้ง default โดยใช้ CHANNEL_ID ที่ระบุ

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

firebase Hosting:channel:delete \
CHANNEL_ID

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

คุณไม่สามารถลบช่องที่กำลังเผยแพร่ของเว็บไซต์ได้

firebase Hosting:channel:deploy \
CHANNEL_ID

ทำให้เนื้อหาโฮสติ้งและการกำหนดค่าใช้งานได้ในแชแนลตัวอย่างที่ระบุ

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

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

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

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

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

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

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

คุณจะพบ VERSION_ID ได้ในแดชบอร์ดโฮสติ้งของคอนโซล Firebase

คำสั่ง Realtime Database

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

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

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

คำสั่งการกำหนดค่าระยะไกล

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