Firebase CLI ( GitHub ) cung cấp nhiều công cụ để quản lý, xem và triển khai các dự án Firebase.
Trước khi sử dụng Firebase CLI, hãy thiết lập dự án Firebase .
Thiết lập hoặc cập nhật CLI
Cài đặt Firebase CLI
Bạn có thể cài đặt Firebase CLI bằng phương pháp phù hợp với hệ điều hành, cấp độ kinh nghiệm và/hoặc trường hợp sử dụng của bạn. Bất kể bạn cài đặt CLI như thế nào, bạn đều có quyền truy cập vào cùng chức năng và lệnh firebase
.
các cửa sổ
Bạn có thể cài đặt Firebase CLI cho Windows bằng một trong các tùy chọn sau:
Lựa chọn | Sự miêu tả | Đề nghị cho... |
---|---|---|
nhị phân độc lập | Tải xuống tệp nhị phân độc lập cho CLI. Sau đó, bạn có thể truy cập tệp thực thi để mở shell nơi bạn có thể chạy lệnh firebase . | Nhà phát triển mới Các nhà phát triển chưa sử dụng hoặc chưa quen với Node.js |
npm | Sử dụng npm (Trình quản lý gói nút) để cài đặt CLI và kích hoạt lệnh firebase có sẵn trên toàn cầu. | Nhà phát triển sử dụng Node.js |
nhị phân độc lập
Để tải xuống và chạy tệp nhị phân cho Firebase CLI, hãy làm theo các bước sau:
Tải xuống tệp nhị phân Firebase CLI cho Windows .
Truy cập tệp nhị phân để mở shell nơi bạn có thể chạy lệnh
firebase
.Tiếp tục đăng nhập và kiểm tra CLI .
npm
Để sử dụng npm
(Trình quản lý gói nút) để cài đặt Firebase CLI, hãy làm theo các bước sau:
Cài đặt Node.js bằng nvm-windows (Trình quản lý phiên bản nút). Việc cài đặt Node.js sẽ tự động cài đặt các công cụ lệnh
npm
.Cài đặt Firebase CLI qua
npm
bằng cách chạy lệnh sau:npm install -g firebase-tools
Lệnh này cho phép lệnh
firebase
có sẵn trên toàn cầu.Tiếp tục đăng nhập và kiểm tra CLI .
macOS hoặc Linux
Bạn có thể cài đặt Firebase CLI cho macOS hoặc Linux bằng một trong các tùy chọn sau:
Lựa chọn | Sự miêu tả | Đề nghị cho... |
---|---|---|
tập lệnh cài đặt tự động | Chạy một lệnh duy nhất tự động phát hiện hệ điều hành của bạn, tải xuống bản phát hành CLI mới nhất, sau đó kích hoạt lệnh firebase có sẵn trên toàn cầu. | Nhà phát triển mới Các nhà phát triển chưa sử dụng hoặc chưa quen với Node.js Triển khai tự động trong môi trường CI/CD |
nhị phân độc lập | Tải xuống tệp nhị phân độc lập cho CLI. Sau đó, bạn có thể định cấu hình và chạy tệp nhị phân cho phù hợp với quy trình làm việc của mình. | Quy trình làm việc hoàn toàn có thể tùy chỉnh bằng CLI |
npm | Sử dụng npm (Trình quản lý gói nút) để cài đặt CLI và kích hoạt lệnh firebase có sẵn trên toàn cầu. | Nhà phát triển sử dụng Node.js |
tập lệnh cài đặt tự động
Để cài đặt Firebase CLI bằng tập lệnh cài đặt tự động, hãy làm theo các bước sau:
Chạy lệnh cURL sau:
curl -sL https://firebase.tools | bash
Tập lệnh này tự động phát hiện hệ điều hành của bạn, tải xuống bản phát hành Firebase CLI mới nhất, sau đó kích hoạt lệnh
firebase
có sẵn trên toàn cầu.Tiếp tục đăng nhập và kiểm tra CLI .
Để biết thêm ví dụ và chi tiết về tập lệnh cài đặt tự động, hãy tham khảo mã nguồn của tập lệnh tại firebase.tools .
nhị phân độc lập
Để tải xuống và chạy tệp nhị phân cho Firebase CLI dành riêng cho hệ điều hành của bạn, hãy làm theo các bước sau:
Tải xuống tệp nhị phân Firebase CLI cho hệ điều hành của bạn: macOS | Linux
(Tùy chọn) Thiết lập lệnh
firebase
có sẵn trên toàn cầu.- Làm cho tệp nhị phân có thể thực thi được bằng cách chạy
chmod +x ./firebase_tools
. - Thêm đường dẫn nhị phân vào PATH của bạn.
- Làm cho tệp nhị phân có thể thực thi được bằng cách chạy
Tiếp tục đăng nhập và kiểm tra CLI .
npm
Để sử dụng npm
(Trình quản lý gói nút) để cài đặt Firebase CLI, hãy làm theo các bước sau:
Cài đặt Node.js bằng nvm (Trình quản lý phiên bản nút).
Việc cài đặt Node.js sẽ tự động cài đặt các công cụ lệnhnpm
.Cài đặt Firebase CLI qua
npm
bằng cách chạy lệnh sau:npm install -g firebase-tools
Lệnh này cho phép lệnh
firebase
có sẵn trên toàn cầu.Tiếp tục đăng nhập và kiểm tra CLI .
Đăng nhập và kiểm tra Firebase CLI
Sau khi cài đặt CLI, bạn phải xác thực. Sau đó, bạn có thể xác nhận xác thực bằng cách liệt kê các dự án Firebase của mình.
Đăng nhập vào Firebase bằng tài khoản Google của bạn bằng cách chạy lệnh sau:
firebase login
Lệnh này kết nối máy cục bộ của bạn với Firebase và cấp cho bạn quyền truy cập vào các dự án Firebase của bạn.
Kiểm tra xem CLI đã được cài đặt và truy cập đúng cách vào tài khoản của bạn chưa bằng cách liệt kê các dự án Firebase của bạn. Chạy lệnh sau:
firebase projects:list
Danh sách được hiển thị phải giống với danh sách các dự án Firebase được liệt kê trong bảng điều khiển Firebase .
Cập nhật lên phiên bản CLI mới nhất
Nói chung, bạn muốn sử dụng phiên bản Firebase CLI cập nhật nhất.
Cách bạn cập nhật phiên bản CLI tùy thuộc vào hệ điều hành và cách bạn cài đặt CLI.
các cửa sổ
- nhị phân độc lập : Tải xuống phiên bản mới , sau đó thay thế nó trên hệ thống của bạn
- npm : Chạy
npm install -g firebase-tools
hệ điều hành Mac
- tập lệnh cài đặt tự động : Chạy
curl -sL https://firebase.tools | upgrade=true bash
- nhị phân độc lập : Tải xuống phiên bản mới , sau đó thay thế nó trên hệ thống của bạn
- npm : Chạy
npm install -g firebase-tools
Linux
- tập lệnh cài đặt tự động : Chạy
curl -sL https://firebase.tools | upgrade=true bash
- nhị phân độc lập : Tải xuống phiên bản mới , sau đó thay thế nó trên hệ thống của bạn
- npm : Chạy
npm install -g firebase-tools
Sử dụng CLI với hệ thống CI
Firebase CLI yêu cầu trình duyệt để hoàn tất xác thực nhưng CLI hoàn toàn tương thích với CI và các môi trường không đầu khác.
Trên máy có trình duyệt, hãy cài đặt Firebase CLI .
Bắt đầu quá trình đăng nhập bằng cách chạy lệnh sau:
firebase login:ci
Truy cập URL được cung cấp, sau đó đăng nhập bằng tài khoản Google.
In mã thông báo làm mới mới. Phiên CLI hiện tại sẽ không bị ảnh hưởng.
Lưu trữ mã thông báo đầu ra theo cách an toàn nhưng có thể truy cập được trong hệ thống CI của bạn.
Sử dụng mã thông báo này khi chạy các lệnh
firebase
. Bạn có thể sử dụng một trong hai tùy chọn sau:Tùy chọn 1: Lưu trữ mã thông báo dưới dạng biến môi trường
FIREBASE_TOKEN
. Hệ thống của bạn sẽ tự động sử dụng mã thông báo.Tùy chọn 2: Chạy tất cả các lệnh
firebase
bằng cờ--token TOKEN
trong hệ thống CI của bạn.
Đây là thứ tự ưu tiên cho việc tải mã thông báo: cờ, biến môi trường, dự án Firebase mong muốn.
Khởi tạo dự án Firebase
Nhiều tác vụ phổ biến được thực hiện bằng CLI, chẳng hạn như triển khai dự án Firebase, yêu cầu thư mục dự án . Bạn thiết lập một thư mục dự án bằng lệnh firebase init
. Thư mục dự án thường có cùng thư mục với thư mục gốc kiểm soát nguồn của bạn và sau khi chạy firebase init
, thư mục đó chứa tệp cấu hình firebase.json
.
Để khởi tạo dự án Firebase mới, hãy chạy lệnh sau từ trong thư mục ứng dụng của bạn:
firebase init
Lệnh firebase init
sẽ hướng dẫn bạn thiết lập thư mục dự án và một số sản phẩm Firebase. Trong quá trình khởi tạo dự án, Firebase CLI yêu cầu bạn hoàn thành các tác vụ sau:
Chọn các sản phẩm Firebase mong muốn để thiết lập trong dự án Firebase của bạn.
Bước này sẽ nhắc bạn đặt cấu hình cho các tệp cụ thể cho các sản phẩm đã chọn. Để biết thêm chi tiết về các cấu hình này, hãy tham khảo tài liệu của sản phẩm cụ thể (ví dụ: Hosting ). Lưu ý rằng bạn luôn có thể chạy
firebase init
sau để thiết lập thêm các sản phẩm Firebase.Chọn một dự án Firebase mặc định.
Bước này liên kết thư mục dự án hiện tại với dự án Firebase để các lệnh dành riêng cho dự án (như
firebase deploy
) chạy theo dự án Firebase thích hợp.Cũng có thể liên kết nhiều dự án Firebase (chẳng hạn như dự án dàn dựng và dự án sản xuất) với cùng một thư mục dự án.
Khi kết thúc quá trình khởi tạo, Firebase sẽ tự động tạo hai tệp sau ở thư mục gốc của thư mục ứng dụng cục bộ của bạn:
Tệp cấu hình
firebase.json
liệt kê cấu hình dự án của bạn.Tệp
.firebaserc
lưu trữ bí danh dự án của bạn.
Tệp firebase.json
Lệnh firebase init
tạo tệp cấu hình firebase.json
trong thư mục gốc của dự án của bạn.
Cần có tệp firebase.json
để triển khai nội dung bằng Firebase CLI vì tệp này chỉ định tệp và cài đặt nào từ thư mục dự án sẽ được triển khai cho dự án Firebase của bạn. Vì một số cài đặt có thể được xác định trong thư mục dự án của bạn hoặc bảng điều khiển Firebase, hãy đảm bảo rằng bạn giải quyết mọi xung đột triển khai tiềm ẩn.
Bạn có thể định cấu hình hầu hết các tùy chọn Lưu trữ Firebase trực tiếp trong tệp firebase.json
. Tuy nhiên, đối với các dịch vụ Firebase khác có thể được triển khai bằng Firebase CLI , lệnh firebase init
sẽ tạo các tệp cụ thể nơi bạn có thể xác định cài đặt cho các dịch vụ đó, chẳng hạn như tệp index.js
cho Chức năng đám mây. Bạn cũng có thể thiết lập các hook predeploy hoặc postdeploy trong tệp firebase.json
.
Sau đây là tệp firebase.json
mẫu với cài đặt mặc định nếu bạn chọn Firebase Hosting, Cloud Firestore và Cloud Functions cho Firebase (với các tùy chọn mã nguồn và mã nguồn TypeScript được chọn) trong quá trình khởi tạo.
{
"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"
]
}
}
Mặc dù firebase.json
được sử dụng theo mặc định, bạn có thể chuyển cờ --config PATH
để chỉ định tệp cấu hình thay thế.
Cấu hình cho nhiều cơ sở dữ liệu Cloud Firestore
Khi bạn chạy firebase init
, tệp firebase.json
của bạn sẽ chứa một khóa firestore
duy nhất tương ứng với cơ sở dữ liệu mặc định của dự án của bạn, như được hiển thị ở trên.
Nếu dự án của bạn chứa nhiều cơ sở dữ liệu Cloud Firestore, hãy chỉnh sửa tệp firebase.json
của bạn để liên kết các Quy tắc bảo mật Cloud Firestore khác nhau và các tệp nguồn chỉ mục cơ sở dữ liệu với mỗi cơ sở dữ liệu. Sửa đổi tệp bằng một mảng JSON, với một mục nhập cho mỗi cơ sở dữ liệu.
"firestore": [
{
"database": "default",
"rules": "firestore.default.rules",
"indexes": "firestore.default.indexes.json"
},
{
"database": "ecommerce",
"rules": "firestore.ecommerce.rules",
"indexes": "firestore.ecommerce.indexes.json"
}
],
Các tệp Chức năng đám mây cần bỏ qua khi triển khai
Tại thời điểm triển khai hàm, CLI tự động chỉ định danh sách các tệp trong thư mục functions
cần bỏ qua. Điều này ngăn việc triển khai vào các tệp không liên quan phụ trợ có thể làm tăng kích thước dữ liệu khi triển khai của bạn.
Danh sách các tệp bị bỏ qua theo mặc định, được hiển thị ở định dạng JSON, là:
"ignore": [
".git",
".runtimeconfig.json",
"firebase-debug.log",
"firebase-debug.*.log",
"node_modules"
]
Nếu bạn thêm các giá trị tùy chỉnh của riêng mình để ignore
trong firebase.json
, hãy đảm bảo rằng bạn giữ lại (hoặc thêm, nếu thiếu) danh sách các tệp được hiển thị ở trên.
Quản lý bí danh dự án
Bạn có thể liên kết nhiều dự án Firebase với cùng một thư mục dự án. Ví dụ: bạn có thể muốn sử dụng một dự án Firebase để dàn dựng và một dự án khác để sản xuất. Bằng cách sử dụng các môi trường dự án khác nhau, bạn có thể xác minh các thay đổi trước khi triển khai vào sản xuất. Lệnh firebase use
cho phép bạn chuyển đổi giữa các bí danh cũng như tạo bí danh mới.
Thêm bí danh dự án
Khi bạn chọn một dự án Firebase trong quá trình khởi tạo dự án , dự án sẽ tự động được gán bí danh default
. Tuy nhiên, để cho phép các lệnh dành riêng cho dự án chạy trên một dự án Firebase khác nhưng vẫn sử dụng cùng một thư mục dự án, hãy chạy lệnh sau từ trong thư mục dự án của bạn:
firebase use --add
Lệnh này sẽ nhắc bạn chọn một dự án Firebase khác và gán dự án đó làm bí danh. Bài tập bí danh được ghi vào tệp .firebaserc
bên trong thư mục dự án của bạn.
Sử dụng bí danh dự án
Để sử dụng bí danh dự án Firebase được chỉ định, hãy chạy bất kỳ lệnh nào sau đây từ trong thư mục dự án của bạn.
Yêu cầu | Sự miêu tả |
---|---|
firebase use | Xem danh sách các bí danh hiện được xác định cho thư mục dự án của bạn |
firebase use \ | Chỉ đạo tất cả các lệnh chạy theo dự án Firebase được chỉ định. CLI sử dụng dự án này làm "dự án đang hoạt động" hiện tại. |
firebase use --clear | Xóa dự án đang hoạt động. Chạy |
firebase use \ | Xóa bí danh khỏi thư mục dự án của bạn. |
Bạn có thể ghi đè những gì đang được sử dụng làm dự án hiện đang hoạt động bằng cách chuyển cờ --project
bằng bất kỳ lệnh CLI nào. Ví dụ: Bạn có thể đặt CLI của mình chạy trên dự án Firebase mà bạn đã chỉ định bí danh staging
. Nếu bạn muốn chạy một lệnh duy nhất đối với dự án Firebase mà bạn đã gán bí danh prod
thì bạn có thể chạy, chẳng hạn như
.
Kiểm soát nguồn và bí danh dự án
Nói chung, bạn nên kiểm tra tệp .firebaserc
của mình trong phần kiểm soát nguồn để cho phép nhóm của bạn chia sẻ bí danh dự án. Tuy nhiên, đối với các dự án nguồn mở hoặc mẫu khởi đầu, bạn thường không nên kiểm tra tệp .firebaserc
của mình.
Nếu bạn có một dự án phát triển chỉ dành cho bạn sử dụng, bạn có thể chuyển cờ --project
bằng mỗi lệnh hoặc chạy firebase use PROJECT_ID
mà không chỉ định bí danh cho dự án Firebase.
Phục vụ và thử nghiệm dự án Firebase của bạn tại địa phương
Bạn có thể xem và thử nghiệm dự án Firebase của mình trên các URL được lưu trữ cục bộ trước khi triển khai vào sản xuất. Nếu chỉ muốn kiểm tra các tính năng chọn lọc, bạn có thể sử dụng danh sách được phân tách bằng dấu phẩy trong một lá cờ trên lệnh firebase serve
.
Chạy lệnh sau từ thư mục gốc của dự án cục bộ nếu bạn muốn thực hiện một trong các tác vụ sau:
- Xem nội dung tĩnh cho ứng dụng được lưu trữ trên Firebase của bạn.
- Sử dụng Chức năng đám mây để tạo nội dung động cho Firebase Hosting và bạn muốn sử dụng các chức năng HTTP sản xuất (đã triển khai) của mình để mô phỏng Lưu trữ trên URL cục bộ.
firebase serve --only hosting
Mô phỏng dự án của bạn bằng các hàm HTTP cục bộ
Chạy bất kỳ lệnh nào sau đây từ thư mục dự án của bạn để mô phỏng dự án của bạn bằng các hàm HTTP cục bộ .
Để mô phỏng các chức năng HTTP và lưu trữ để thử nghiệm trên URL cục bộ, hãy sử dụng một trong các lệnh sau:
firebase serve
firebase serve --only functions,hosting // uses a flag
Để chỉ mô phỏng các chức năng HTTP, hãy sử dụng lệnh sau:
firebase serve --only functions
Kiểm tra từ các thiết bị cục bộ khác
Theo mặc định, firebase serve
chỉ đáp ứng các yêu cầu từ localhost
. Điều này có nghĩa là bạn sẽ có thể truy cập nội dung được lưu trữ từ trình duyệt web trên máy tính của bạn chứ không phải từ các thiết bị khác trên mạng của bạn. Nếu bạn muốn kiểm tra từ các thiết bị cục bộ khác, hãy sử dụng cờ --host
, như sau:
firebase serve --host 0.0.0.0 // accepts requests to any host
Triển khai vào dự án Firebase
Firebase CLI quản lý việc triển khai mã và nội dung cho dự án Firebase của bạn, bao gồm:
- Bản phát hành mới của trang web Lưu trữ Firebase của bạn
- Chức năng đám mây mới, được cập nhật hoặc hiện có cho Firebase
- Quy tắc cho cơ sở dữ liệu thời gian thực Firebase
- Quy tắc lưu trữ đám mây cho Firebase
- Quy tắc dành cho Cloud Firestore
- Chỉ mục cho Cloud Firestore
Để triển khai dự án Firebase, hãy chạy lệnh sau từ thư mục dự án của bạn:
firebase deploy
Bạn có thể tùy ý thêm nhận xét cho mỗi lần triển khai của mình. Nhận xét này sẽ hiển thị cùng với thông tin triển khai khác trên trang Firebase Hosting của dự án của bạn. Ví dụ:
firebase deploy -m "Deploying the best new feature ever."
Khi bạn sử dụng lệnh firebase deploy
, hãy lưu ý những điều sau:
Để triển khai tài nguyên từ thư mục dự án, thư mục dự án phải có tệp
firebase.json
. Tệp này được tạo tự động cho bạn bằng lệnhfirebase init
.Theo mặc định,
firebase deploy
tạo bản phát hành cho tất cả tài nguyên có thể triển khai trong thư mục dự án của bạn. Để triển khai các dịch vụ hoặc tính năng cụ thể của Firebase, hãy sử dụng triển khai một phần .
Xung đột triển khai cho các quy tắc bảo mật
Đối với Cơ sở dữ liệu thời gian thực Firebase, Cloud Storage cho Firebase và Cloud Firestore, bạn có thể xác định các quy tắc bảo mật trong thư mục dự án cục bộ của mình hoặc trong bảng điều khiển Firebase .
Một tùy chọn khác để tránh xung đột khi triển khai là sử dụng triển khai một phần và chỉ xác định các quy tắc trong bảng điều khiển Firebase.
Hạn ngạch triển khai
Có thể (mặc dù không chắc) bạn có thể vượt quá hạn ngạch giới hạn tốc độ hoặc khối lượng hoạt động triển khai Firebase của mình. Ví dụ: khi triển khai số lượng chức năng rất lớn, bạn có thể nhận được thông báo lỗi HTTP 429 Quota
. Để giải quyết những vấn đề như vậy, hãy thử sử dụng triển khai một phần .
Quay lại quá trình triển khai
Bạn có thể hoàn nguyên quá trình triển khai Dịch vụ lưu trữ Firebase từ trang Lưu trữ Firebase của dự án bằng cách chọn hành động Hoàn nguyên cho bản phát hành mong muốn.
Hiện không thể khôi phục các bản phát hành quy tắc bảo mật cho Cơ sở dữ liệu thời gian thực Firebase, Cloud Storage cho Firebase hoặc Cloud Firestore.
Triển khai các dịch vụ Firebase cụ thể
Nếu chỉ muốn triển khai các dịch vụ hoặc tính năng cụ thể của Firebase, bạn có thể sử dụng danh sách được phân tách bằng dấu phẩy trong cờ trên lệnh firebase deploy
. Ví dụ: lệnh sau triển khai nội dung Firebase Hosting và các quy tắc bảo mật Cloud Storage.
firebase deploy --only hosting,storage
Bảng sau liệt kê các dịch vụ và tính năng có sẵn để triển khai một phần. Tên trong các cờ tương ứng với các khóa trong tệp cấu hình firebase.json
của bạn.
Cú pháp cờ | Dịch vụ hoặc tính năng được triển khai |
---|---|
--only hosting | Nội dung lưu trữ Firebase |
--only database | Quy tắc cơ sở dữ liệu thời gian thực Firebase |
--only storage | Bộ nhớ đám mây cho các quy tắc của Firebase |
--only firestore | Các quy tắc và chỉ mục của Cloud Firestore cho tất cả các cơ sở dữ liệu được định cấu hình |
--only functions | Chức năng đám mây cho Firebase (có thể có các phiên bản cụ thể hơn của cờ này ) |
Triển khai các chức năng cụ thể
Khi triển khai các chức năng, bạn có thể nhắm mục tiêu các chức năng cụ thể. Ví dụ:
firebase deploy --only functions:function1
firebase deploy --only functions:function1,functions:function2
Một tùy chọn khác là nhóm các hàm thành các nhóm xuất trong tệp /functions/index.js
của bạn. Nhóm các hàm cho phép bạn triển khai nhiều hàm bằng một lệnh duy nhất.
Ví dụ: bạn có thể viết các hàm sau để xác định groupA
và groupB
:
var functions = require('firebase-functions');
exports.groupA = {
function1: functions.https.onRequest(...),
function2: functions.database.ref('\path').onWrite(...)
}
exports.groupB = require('./groupB');
Trong ví dụ này, một tệp functions/groupB.js
riêng biệt chứa các hàm bổ sung xác định cụ thể các hàm trong groupB
. Ví dụ:
var functions = require('firebase-functions');
exports.function3 = functions.storage.object().onChange(...);
exports.function4 = functions.analytics.event('in_app_purchase').onLog(...);
Trong ví dụ này, bạn có thể triển khai tất cả các hàm groupA
bằng cách chạy lệnh sau từ thư mục dự án của mình:
firebase deploy --only functions:groupA
Hoặc bạn có thể nhắm mục tiêu một chức năng cụ thể trong một nhóm bằng cách chạy lệnh sau:
firebase deploy --only functions:groupA.function1,groupB.function4
Xóa chức năng
Firebase CLI hỗ trợ các lệnh và tùy chọn sau để xóa các chức năng đã triển khai trước đó:
Xóa tất cả các hàm khớp với tên được chỉ định trong tất cả các vùng:
firebase functions:delete FUNCTION-1_NAME
Xóa một chức năng được chỉ định đang chạy trong vùng không mặc định:
firebase functions:delete FUNCTION-1_NAME --region REGION_NAME
Xóa nhiều chức năng:
firebase functions:delete FUNCTION-1_NAME FUNCTION-2_NAME
Xóa một nhóm chức năng được chỉ định:
firebase functions:delete GROUP_NAME
Bỏ qua lời nhắc xác nhận:
firebase functions:delete FUNCTION-1_NAME --force
Thiết lập các tác vụ theo kịch bản trước và sau khi triển khai
Bạn có thể kết nối các tập lệnh shell với lệnh firebase deploy
để thực hiện các tác vụ triển khai trước hoặc triển khai sau. Ví dụ: tập lệnh triển khai trước có thể dịch mã TypeScript thành JavaScript và hook hậu triển khai có thể thông báo cho quản trị viên về nội dung trang web mới triển khai lên Firebase Hosting.
Để thiết lập hook predeploy hoặc postdeploy, hãy thêm tập lệnh bash vào tệp cấu hình firebase.json
của bạn. Bạn có thể xác định các tập lệnh ngắn gọn trực tiếp trong tệp firebase.json
hoặc bạn có thể tham chiếu các tệp khác có trong thư mục dự án của mình.
Ví dụ: tập lệnh sau đây là biểu thức firebase.json
cho tác vụ hậu triển khai gửi thông báo Slack khi triển khai thành công lên Firebase Hosting.
"hosting": {
// ...
"postdeploy": "./messageSlack.sh 'Just deployed to Firebase Hosting'",
"public": "public"
}
Tệp tập lệnh messageSlack.sh
nằm trong thư mục dự án và trông như thế này:
curl -X POST -H 'Content-type: application/json' --data '{"text":"$1"}' \https://SLACK_WEBHOOK_URL
Bạn có thể thiết lập các hook predeploy
và postdeploy
cho bất kỳ nội dung nào mà bạn có thể triển khai . Lưu ý rằng việc chạy firebase deploy
sẽ kích hoạt tất cả các tác vụ predeploy và postdeploy được xác định trong tệp firebase.json
của bạn. Để chỉ chạy những tác vụ được liên kết với dịch vụ Firebase cụ thể, hãy sử dụng lệnh triển khai một phần .
Cả hai hook predeploy
và postdeploy
đều in các luồng đầu ra tiêu chuẩn và lỗi của tập lệnh tới thiết bị đầu cuối. Đối với các trường hợp thất bại, hãy lưu ý những điều sau:
- Nếu hook predeploy không hoàn thành như mong đợi thì quá trình triển khai sẽ bị hủy.
- Nếu việc triển khai không thành công vì bất kỳ lý do gì, các hook postdeploy sẽ không được kích hoạt.
Biến môi trường
Trong các tập lệnh chạy trong hook predeploy và postdeploy, có sẵn các biến môi trường sau:
-
$GCLOUD_PROJECT
: ID dự án của dự án đang hoạt động -
$PROJECT_DIR
: Thư mục gốc chứa filefirebase.json
-
$RESOURCE_DIR
: (Chỉ dành cho tập lệnhhosting
vàfunctions
) Vị trí của thư mục chứa tài nguyên Chức năng lưu trữ hoặc Đám mây sẽ được triển khai
Quản lý nhiều phiên bản Cơ sở dữ liệu thời gian thực
Một dự án Firebase có thể có nhiều phiên bản Cơ sở dữ liệu thời gian thực Firebase . Theo mặc định, các lệnh CLI tương tác với phiên bản cơ sở dữ liệu mặc định của bạn.
Tuy nhiên, bạn có thể tương tác với một phiên bản cơ sở dữ liệu không mặc định bằng cách sử dụng--instance DATABASE_NAME
. Các lệnh sau hỗ trợ cờ --instance
:
-
firebase database:get
-
firebase database:profile
-
firebase database:push
-
firebase database:remove
-
firebase database:set
-
firebase database:update
Tham chiếu lệnh
Lệnh quản trị CLI
Yêu cầu | Sự miêu tả |
---|---|
giúp đỡ | Hiển thị thông tin trợ giúp về CLI hoặc các lệnh cụ thể. |
trong đó | Liên kết và thiết lập dự án Firebase mới trong thư mục hiện tại. Lệnh này tạo tệp cấu hình firebase.json trong thư mục hiện tại. |
đăng nhập | Xác thực CLI với tài khoản Firebase của bạn. Yêu cầu quyền truy cập vào trình duyệt web. Để đăng nhập vào CLI trong môi trường từ xa không cho phép truy cập localhost , hãy sử dụng--no-localhost cờ. |
đăng nhập:ci | Tạo mã thông báo xác thực để sử dụng trong môi trường không tương tác. |
đăng xuất | Đăng xuất CLI khỏi tài khoản Firebase của bạn. |
mở | Mở trình duyệt tới các tài nguyên dự án có liên quan. |
dự án:danh sách | Liệt kê tất cả các dự án Firebase mà bạn có quyền truy cập. |
sử dụng | Đặt dự án Firebase đang hoạt động cho CLI. Quản lý bí danh dự án . |
Lệnh quản lý dự án
Yêu cầu | Sự miêu tả | |
---|---|---|
Quản lý dự án Firebase | ||
dự án:addfirebase | Thêm tài nguyên Firebase vào dự án Google Cloud hiện có. | |
dự án: tạo | Tạo dự án Google Cloud mới, sau đó thêm tài nguyên Firebase vào dự án mới. | |
dự án:danh sách | Liệt kê tất cả các dự án Firebase mà bạn có quyền truy cập. | |
Quản lý ứng dụng Firebase (iOS, Android, Web) | ||
ứng dụng: tạo | Tạo Ứng dụng Firebase mới trong dự án đang hoạt động. | |
ứng dụng: danh sách | Liệt kê các Ứng dụng Firebase đã đăng ký trong dự án đang hoạt động. | |
ứng dụng: sdkconfig | In cấu hình dịch vụ Google của Ứng dụng Firebase. | |
thiết lập: web | Không dùng nữa. Thay vào đó, hãy sử dụng apps:sdkconfig và chỉ định web làm đối số nền tảng.In cấu hình dịch vụ Google của Ứng dụng web Firebase. | |
Quản lý băm chứng chỉ SHA (chỉ dành cho Android) | ||
ứng dụng:android:sha:tạo \ FIREBASE_APP_ID SHA_HASH | Thêm hàm băm chứng chỉ SHA được chỉ định vào Ứng dụng Android Firebase được chỉ định. | |
ứng dụng:android:sha:xóa \ FIREBASE_APP_ID SHA_HASH | Xóa hàm băm chứng chỉ SHA được chỉ định khỏi Ứng dụng Android Firebase được chỉ định. | |
ứng dụng:android:sha:list \ FIREBASE_APP_ID | Liệt kê các hàm băm chứng chỉ SHA cho Ứng dụng Android Firebase được chỉ định. |
Triển khai và phát triển địa phương
Các lệnh này cho phép bạn triển khai và tương tác với trang web Lưu trữ Firebase của mình.
Yêu cầu | Sự miêu tả |
---|---|
triển khai | Triển khai mã và nội dung từ thư mục dự án của bạn đến dự án đang hoạt động. Đối với Firebase Hosting, cần có tệp cấu hình firebase.json . |
phục vụ | Khởi động máy chủ web cục bộ với cấu hình Firebase Hosting của bạn. Đối với Firebase Hosting, cần có tệp cấu hình firebase.json . |
Lệnh phân phối ứng dụng
Yêu cầu | Sự miêu tả |
---|---|
phân phối ứng dụng:phân phối \ --app FIREBASE_APP_ID | Cung cấp bản dựng cho người thử nghiệm. |
phân phối ứng dụng:người thử nghiệm:thêm | Thêm người thử nghiệm vào dự án. |
phân phối ứng dụng:người kiểm tra:xóa | Loại bỏ người thử nghiệm khỏi dự án. |
Lệnh xác thực (quản lý người dùng)
Yêu cầu | Sự miêu tả |
---|---|
xác thực:xuất khẩu | Xuất tài khoản người dùng của dự án đang hoạt động sang tệp JSON hoặc CSV. Để biết thêm chi tiết, hãy tham khảo trang auth:import và auth:export . |
xác thực:nhập khẩu | Nhập tài khoản người dùng từ tệp JSON hoặc CSV vào dự án đang hoạt động. Để biết thêm chi tiết, hãy tham khảo trang auth:import và auth:export . |
Các lệnh của Cloud Firestore
Yêu cầu | Sự miêu tả |
---|---|
firestore:địa điểm | Liệt kê các vị trí có sẵn cho cơ sở dữ liệu Cloud Firestore của bạn. |
firestore:cơ sở dữ liệu:tạo DATABASE_ID | Tạo một phiên bản cơ sở dữ liệu ở chế độ gốc trong dự án Firebase của bạn. Lệnh này có các cờ sau:
|
firestore:cơ sở dữ liệu:danh sách | Liệt kê cơ sở dữ liệu trong dự án Firebase của bạn. |
firestore:cơ sở dữ liệu:lấy DATABASE_ID | Nhận cấu hình cơ sở dữ liệu cho cơ sở dữ liệu được chỉ định trong dự án Firebase của bạn. |
firestore:cơ sở dữ liệu:cập nhật DATABASE_ID | Cập nhật cấu hình cơ sở dữ liệu của cơ sở dữ liệu được chỉ định trong dự án Firebase của bạn. Cần có ít nhất một lá cờ. Lệnh này có các cờ sau:
|
firestore:cơ sở dữ liệu:xóa DATABASE_ID | Xóa cơ sở dữ liệu trong dự án Firebase của bạn. |
firestore:chỉ mục | Liệt kê các chỉ mục cho cơ sở dữ liệu trong dự án Firebase của bạn. Lệnh lấy cờ sau:
|
firestore:xóa | Xóa tài liệu trong cơ sở dữ liệu của dự án đang hoạt động. Sử dụng CLI, bạn có thể xóa đệ quy tất cả tài liệu trong bộ sưu tập. Lưu ý rằng việc xóa dữ liệu Cloud Firestore bằng CLI sẽ phát sinh chi phí đọc và xóa. Để biết thêm thông tin, hãy xem Tìm hiểu cách thanh toán trên Cloud Firestore . Lệnh lấy cờ sau:
|
Chức năng đám mây cho các lệnh Firebase
Yêu cầu | Sự miêu tả |
---|---|
chức năng:config:clone | Sao chép môi trường của dự án khác vào dự án Firebase đang hoạt động. |
chức năng:config:get | Truy xuất các giá trị cấu hình hiện có của Chức năng đám mây của dự án đang hoạt động. |
chức năng:config:set | Lưu trữ các giá trị cấu hình thời gian chạy của Chức năng đám mây của dự án đang hoạt động. |
chức năng:config:unset | Xóa các giá trị khỏi cấu hình thời gian chạy của dự án đang hoạt động. |
chức năng: nhật ký | Đọc nhật ký từ các Chức năng đám mây được triển khai. |
Để biết thêm thông tin, hãy tham khảo tài liệu cấu hình môi trường .
Các lệnh Crashlytics
Yêu cầu | Sự miêu tả |
---|---|
Crashlytics:mappingfile:generateid \ --resource-file= PATH/TO/ANDROID_RESOURCE.XML | Tạo ID tệp ánh xạ duy nhất trong tệp tài nguyên Android (XML) được chỉ định. |
Crashlytics:mappingfile:tải lên \ --app= FIREBASE_APP_ID \ --resource-file= PATH/TO/ANDROID_RESOURCE.XML \ PATH/TO/MAPPING_FILE.TXT | Tải tệp ánh xạ (TXT) tương thích với Proguard lên cho ứng dụng này và liên kết tệp đó với ID tệp ánh xạ được khai báo trong tệp tài nguyên Android (XML) được chỉ định. |
Crashlytics:biểu tượng:tải lên \ --app= FIREBASE_APP_ID \ PATH/TO/SYMBOLS | Tạo tệp biểu tượng tương thích với Crashlytics cho thư viện gốc gặp sự cố trên Android và tải tệp đó lên máy chủ Firebase. |
Các lệnh mở rộng
Yêu cầu | Sự miêu tả |
---|---|
máy lẻ | Hiển thị thông tin về cách sử dụng các lệnh Tiện ích mở rộng Firebase. Liệt kê các phiên bản tiện ích mở rộng được cài đặt trong dự án đang hoạt động. |
ext:cấu hình \ EXTENSION_INSTANCE_ID | Định cấu hình lại các giá trị tham số của phiên bản tiện ích mở rộng trong bảng kê khai tiện ích mở rộng của bạn. |
ext:thông tin \ PUBLISHER_ID/EXTENSION_ID | In thông tin chi tiết về tiện ích mở rộng. |
ext:cài đặt \ PUBLISHER_ID/EXTENSION_ID | Thêm phiên bản mới của tiện ích mở rộng vào bảng kê khai tiện ích mở rộng của bạn. |
máy lẻ: danh sách | Liệt kê tất cả các phiên bản tiện ích mở rộng được cài đặt trong dự án Firebase. In ID phiên bản cho mỗi tiện ích mở rộng. |
ext:gỡ cài đặt \ EXTENSION_INSTANCE_ID | Xóa phiên bản tiện ích mở rộng khỏi bảng kê khai tiện ích mở rộng của bạn. |
ext:cập nhật \ EXTENSION_INSTANCE_ID | Cập nhật phiên bản tiện ích mở rộng lên phiên bản mới nhất trong bảng kê khai tiện ích mở rộng của bạn. |
ext:xuất khẩu | Xuất tất cả các phiên bản tiện ích mở rộng đã cài đặt từ dự án của bạn sang bảng kê khai tiện ích mở rộng của bạn. |
Lệnh của nhà xuất bản tiện ích mở rộng
Yêu cầu | Sự miêu tả |
---|---|
máy lẻ:dev:init | Khởi tạo cơ sở mã khung cho tiện ích mở rộng mới trong thư mục hiện tại. |
ext:dev:list \ PUBLISHER_ID | In danh sách tất cả tiện ích mở rộng được nhà xuất bản tải lên. |
máy lẻ:dev:đăng ký | Đăng ký dự án Firebase làm dự án nhà xuất bản tiện ích mở rộng . |
ext:dev:không dùng nữa \ PUBLISHER_ID/EXTENSION_ID \ VERSION_PREDICATE | Không dùng các phiên bản tiện ích mở rộng phù hợp với vị từ phiên bản. Vị từ phiên bản có thể là một phiên bản duy nhất (chẳng hạn như 1.0.0 ) hoặc một loạt phiên bản (chẳng hạn như >1.0.0 ).Nếu không có biến vị ngữ phiên bản nào được cung cấp thì tất cả các phiên bản của tiện ích mở rộng đó sẽ không được dùng nữa. |
ext:dev:không được chấp nhận \ PUBLISHER_ID/EXTENSION_ID \ VERSION_PREDICATE | Không dùng nữa các phiên bản tiện ích mở rộng phù hợp với vị từ phiên bản. Vị từ phiên bản có thể là một phiên bản duy nhất (chẳng hạn như 1.0.0 ) hoặc một loạt phiên bản (chẳng hạn như >1.0.0 ).Nếu không có biến vị ngữ phiên bản nào được cung cấp thì tất cả các phiên bản của tiện ích mở rộng đó sẽ không được chấp nhận. |
ext:dev:tải lên \ PUBLISHER_ID/EXTENSION_ID | Tải lên phiên bản mới của tiện ích mở rộng. |
ext:dev:usage \ PUBLISHER_ID | Hiển thị số lượt cài đặt và số liệu sử dụng cho các tiện ích mở rộng do nhà xuất bản tải lên. |
Lệnh lưu trữ
Yêu cầu | Sự miêu tả |
---|---|
lưu trữ: vô hiệu hóa | Dừng phân phát lưu lượng truy cập Firebase Hosting cho dự án Firebase đang hoạt động. URL lưu trữ của dự án của bạn sẽ hiển thị thông báo "Không tìm thấy trang web" sau khi chạy lệnh này. |
Quản lý các trang web lưu trữ | |
lưu trữ firebase:sites:tạo \ SITE_ID | Tạo một trang web Lưu trữ mới trong dự án Firebase đang hoạt động bằng cách sử dụng (Tùy chọn) Chỉ định Ứng dụng web Firebase hiện có để liên kết với trang web mới bằng cách chuyển cờ sau: |
lưu trữ căn cứ hỏa lực: trang web: xóa \ SITE_ID | Xóa trang web lưu trữ được chỉ định CLI hiển thị lời nhắc xác nhận trước khi xóa trang web. (Tùy chọn) Bỏ qua lời nhắc xác nhận bằng cách chuyển các cờ sau: |
lưu trữ firebase:sites:get \ SITE_ID | Truy xuất thông tin về trang web Lưu trữ được chỉ định |
lưu trữ firebase: trang web: danh sách | Liệt kê tất cả các trang web Lưu trữ cho dự án Firebase đang hoạt động |
Quản lý các kênh xem trước | |
lưu trữ firebase: kênh: tạo \ CHANNEL_ID | Tạo kênh xem trước mới trong trang web Lưu trữ mặc định bằng Lệnh này không triển khai tới kênh. |
lưu trữ firebase: kênh: xóa \ CHANNEL_ID | Xóa kênh xem trước đã chỉ định Bạn không thể xóa kênh trực tiếp của trang web. |
lưu trữ firebase: kênh: triển khai \ CHANNEL_ID | Triển khai nội dung và cấu hình Lưu trữ của bạn tới kênh xem trước được chỉ định Nếu kênh xem trước chưa tồn tại, lệnh này sẽ tạo kênh trong trang Lưu trữ mặc định trước khi triển khai lên kênh. |
lưu trữ firebase: kênh: danh sách | Liệt kê tất cả các kênh (bao gồm cả kênh "trực tiếp") trong trang web Lưu trữ mặc định |
lưu trữ firebase: kênh: mở \ CHANNEL_ID | Mở trình duyệt tới URL của kênh được chỉ định hoặc trả về URL nếu không thể mở trong trình duyệt |
Nhân bản phiên bản | |
lưu trữ firebase: bản sao \ SOURCE_SITE_ID : SOURCE_CHANNEL_ID \ TARGET_SITE_ID : TARGET_CHANNEL_ID | Bản sao phiên bản được triển khai gần đây nhất trên kênh "nguồn" được chỉ định cho kênh "mục tiêu" được chỉ định Lệnh này cũng triển khai đến kênh "Target" được chỉ định. Nếu kênh "Target" chưa tồn tại, thì lệnh này sẽ tạo một kênh xem trước mới trong trang web lưu trữ "Target" trước khi triển khai đến kênh. |
Lưu trữ Firebase: Clone \ SOURCE_SITE_ID :@ VERSION_ID \ TARGET_SITE_ID : TARGET_CHANNEL_ID | Bản sao phiên bản được chỉ định cho kênh "Target" được chỉ định Lệnh này cũng triển khai đến kênh "Target" được chỉ định. Nếu kênh "Target" chưa tồn tại, thì lệnh này sẽ tạo một kênh xem trước mới trong trang web lưu trữ "Target" trước khi triển khai đến kênh. Bạn có thể tìm thấy |
Lệnh cơ sở dữ liệu thời gian thực
Lưu ý rằng bạn có thể tạo phiên bản cơ sở dữ liệu thời gian thực mặc định ban đầu của mình trong bảng điều khiển Firebase hoặc bằng cách sử dụng dòng công việc khởi đầu firebase init
chung hoặc luồng firebase init database
cụ thể.
Khi các phiên bản được tạo, bạn có thể quản lý chúng như được thảo luận trong quản lý nhiều trường hợp cơ sở dữ liệu thời gian thực .
Yêu cầu | Sự miêu tả |
---|---|
Cơ sở dữ liệu: Nhận | Lấy dữ liệu từ cơ sở dữ liệu của dự án hoạt động và hiển thị nó dưới dạng JSON. Hỗ trợ truy vấn trên dữ liệu được lập chỉ mục. |
Cơ sở dữ liệu: Các trường hợp: Tạo | Tạo một thể hiện cơ sở dữ liệu với một tên phiên bản được chỉ định. Chấp nhận tùy chọn --location để tạo cơ sở dữ liệu trong một khu vực được chỉ định. Để biết tên khu vực để sử dụng với tùy chọn này, hãy xem các vị trí chọn cho dự án của bạn . Nếu không có thể hiện cơ sở dữ liệu nào tồn tại cho dự án hiện tại, bạn sẽ được nhắc chạy luồng firebase init để tạo một thể hiện. |
Cơ sở dữ liệu: Các trường hợp: Danh sách | Liệt kê tất cả các trường hợp cơ sở dữ liệu cho dự án này. Chấp nhận tùy chọn --location cho cơ sở dữ liệu liệt kê trong một khu vực được chỉ định. Để biết tên khu vực để sử dụng với tùy chọn này, hãy xem các vị trí chọn cho dự án của bạn . |
Cơ sở dữ liệu: Hồ sơ | Xây dựng một hồ sơ hoạt động trên cơ sở dữ liệu của dự án đang hoạt động. Để biết thêm chi tiết, hãy tham khảo các loại hoạt động cơ sở dữ liệu thời gian thực . |
Cơ sở dữ liệu: Đẩy | Đẩy dữ liệu mới vào danh sách tại một vị trí được chỉ định trong cơ sở dữ liệu của dự án đang hoạt động. Lấy đầu vào từ một tệp, stdin hoặc đối số dòng lệnh. |
Cơ sở dữ liệu: Xóa | Xóa tất cả dữ liệu tại một vị trí được chỉ định trong cơ sở dữ liệu của dự án đang hoạt động. |
Cơ sở dữ liệu: Đặt | Thay thế tất cả dữ liệu tại một vị trí được chỉ định trong cơ sở dữ liệu của dự án hoạt động. Lấy đầu vào từ một tệp, stdin hoặc đối số dòng lệnh. |
Cơ sở dữ liệu: Cập nhật | Thực hiện cập nhật một phần tại một vị trí được chỉ định trong cơ sở dữ liệu của dự án đang hoạt động. Lấy đầu vào từ một tệp, stdin hoặc đối số dòng lệnh. |
Các lệnh cấu hình từ xa
Yêu cầu | Sự miêu tả |
---|---|
RemoteConfig: Phiên bản: Danh sách \ -Limit NUMBER_OF_VERSIONS | Liệt kê mười phiên bản gần đây nhất của mẫu. Chỉ định 0 để trả về tất cả các phiên bản hiện có hoặc tùy chọn vượt qua tùy chọn --limit để giới hạn số lượng phiên bản được trả về. |
RemoteConfig: Nhận \ --V, phiên bản_number VERSION_NUMBER --O, FILENAME đầu ra | Nhận mẫu theo phiên bản (mặc định cho phiên bản mới nhất) và xuất ra các nhóm tham số, tham số và tên điều kiện và phiên bản vào một bảng. Tùy chọn, bạn có thể viết đầu ra vào một tệp được chỉ định với -o, FILENAME . |
RemoteConfig: rollback \ --V, phiên bản_number VERSION_NUMBER --lực lượng | Rolls trở lại mẫu cấu hình từ xa thành một số phiên bản trước được chỉ định hoặc mặc định cho phiên bản trước ngay lập tức (phiên bản hiện tại -1). Trừ khi --force được thông qua, nhắc nhở Y/N trước khi tiếp tục quay lại. |