Trước khi triển khai tới trang web trực tiếp của mình, bạn sẽ muốn xem và kiểm tra các thay đổi của mình. Dịch vụ lưu trữ Firebase cho phép bạn xem và kiểm tra các thay đổi cục bộ cũng như tương tác với các tài nguyên dự án phụ trợ mô phỏng. Nếu bạn cần đồng đội của mình xem và kiểm tra các thay đổi của mình, Dịch vụ lưu trữ có thể tạo các URL xem trước tạm thời, có thể chia sẻ cho trang web của bạn. Chúng tôi thậm chí còn hỗ trợ tích hợp GitHub để triển khai từ yêu cầu kéo.
Trước khi bắt đầu
Hoàn thành các bước được liệt kê trên trang Bắt đầu lưu trữ , cụ thể là các tác vụ sau:
- Cài đặt hoặc cập nhật Firebase CLI lên phiên bản mới nhất.
- Kết nối thư mục dự án cục bộ (chứa nội dung ứng dụng của bạn) với dự án Firebase của bạn.
Bạn có thể tùy ý triển khai cấu hình và nội dung Lưu trữ của ứng dụng, nhưng đó không phải là điều kiện tiên quyết để thực hiện các bước trên trang này.
Bước 1: Kiểm tra cục bộ
Nếu bạn đang thực hiện các bước lặp lại nhanh chóng hoặc bạn muốn ứng dụng của mình tương tác với các tài nguyên của dự án phụ trợ được mô phỏng, thì bạn có thể kiểm tra nội dung Dịch vụ lưu trữ của mình và định cấu hình cục bộ. Khi thử nghiệm cục bộ, Firebase phân phối ứng dụng web của bạn tại một URL được lưu trữ cục bộ.
Dịch vụ lưu trữ là một phần của Bộ trình giả lập cục bộ Firebase , cho phép ứng dụng của bạn tương tác với cấu hình và nội dung Dịch vụ lưu trữ được mô phỏng , cũng như các tài nguyên dự án mô phỏng (chức năng, cơ sở dữ liệu và quy tắc) của bạn (tùy chọn).
(Tùy chọn) Theo mặc định, ứng dụng được lưu trữ cục bộ của bạn sẽ tương tác với tài nguyên dự án (chức năng, cơ sở dữ liệu, quy tắc, v.v.) thực , không được mô phỏng . Thay vào đó, bạn có thể tùy ý kết nối ứng dụng của mình để sử dụng bất kỳ tài nguyên dự án mô phỏng nào mà bạn đã định cấu hình. Tìm hiểu thêm: Cơ sở dữ liệu thời gian thực | Cửa hàng lửa trên mây | Chức năng đám mây
Từ thư mục gốc của thư mục dự án cục bộ của bạn, hãy chạy lệnh sau:
firebase emulators:start
Mở ứng dụng web của bạn tại URL cục bộ do CLI trả về (thường là
http://localhost:5000
).Để cập nhật các thay đổi của URL cục bộ, hãy làm mới trình duyệt của bạn.
Kiểm tra từ các thiết bị cục bộ khác
Theo mặc định, trình giả lập chỉ phản hồi 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ữ của mình từ trình duyệt web trên máy tính nhưng không thể truy cập từ các thiết bị khác trên mạng của bạn. Nếu bạn muốn thử nghiệm từ các thiết bị cục bộ khác, hãy định cấu hình firebase.json
của bạn như sau:
"emulators": {
// ...
"hosting": {
"port": 5000
"host": "0.0.0.0"
}
}
Khi sử dụng firebase serve
, ứng dụng của bạn sẽ tương tác với một chương trình phụ trợ được mô phỏng cho nội dung và cấu hình Lưu trữ của bạn (và các chức năng tùy chọn) nhưng chương trình phụ trợ thực sự của bạn cho tất cả các tài nguyên dự án khác.
Từ thư mục gốc của thư mục dự án cục bộ của bạn, hãy chạy lệnh sau:
firebase serve --only hosting
Mở ứng dụng web của bạn tại URL cục bộ do CLI trả về (thường là
http://localhost:5000
).Để cập nhật các thay đổi của URL cục bộ, hãy làm mới trình duyệt của bạn.
Sử dụng firebase serve
để 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ữ của mình từ trình duyệt web trên máy tính nhưng không thể truy cập 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
Bước 2: Xem trước và chia sẻ
Nếu bạn muốn người khác xem các thay đổi đối với ứng dụng web của mình trước khi phát trực tiếp, bạn có thể sử dụng các kênh xem trước.
Sau khi bạn triển khai kênh xem trước, Firebase phân phối ứng dụng web của bạn tại "URL xem trước", đây là URL tạm thời, có thể chia sẻ. Khi sử dụng URL xem trước, ứng dụng web của bạn sẽ tương tác với phần phụ trợ thực sự của bạn cho tất cả tài nguyên dự án (ngoại trừ bất kỳ chức năng "được ghim" nào trong cấu hình viết lại của bạn ).
Lưu ý rằng mặc dù các URL xem trước rất khó đoán (vì chúng chứa hàm băm ngẫu nhiên), nhưng chúng là công khai. Vì vậy, bất cứ ai biết URL đều có thể truy cập nó.
Từ thư mục gốc của thư mục dự án cục bộ của bạn, hãy chạy lệnh sau:
firebase hosting:channel:deploy CHANNEL_ID
Thay thế CHANNEL_ID bằng một chuỗi không có dấu cách (ví dụ:
feature_mission-2-mars
). ID này sẽ được sử dụng để tạo URL xem trước được liên kết với kênh xem trước.Mở ứng dụng web của bạn tại URL xem trước do CLI trả về. Nó sẽ giống như thế này:
PROJECT_ID -- CHANNEL_ID - RANDOM_HASH .web.app
Để cập nhật URL xem trước của bạn với các thay đổi, hãy chạy lại cùng một lệnh. Đảm bảo chỉ định cùng một
CHANNEL_ID
trong lệnh.
Tìm hiểu về cách quản lý kênh xem trước , bao gồm cách đặt ngày hết hạn của kênh.
Dịch vụ lưu trữ Firebase hỗ trợ Tác vụ GitHub tự động tạo và cập nhật URL xem trước khi bạn thực hiện các thay đổi đối với yêu cầu kéo. Tìm hiểu cách thiết lập và sử dụng GitHub Action này .
Bước 3: Triển khai trực tiếp
Khi bạn đã sẵn sàng chia sẻ những thay đổi của mình với mọi người, hãy triển khai nội dung Lưu trữ và định cấu hình cho kênh trực tiếp của bạn. Firebase cung cấp một số tùy chọn khác nhau cho bước này tùy thuộc vào trường hợp sử dụng của bạn (xem các tùy chọn bên dưới).
Tùy chọn 1: Sao chép từ kênh xem trước sang kênh trực tiếp của bạn
Tùy chọn này đảm bảo rằng bạn đang triển khai cho kênh trực tiếp của mình nội dung và cấu hình chính xác mà bạn đã thử nghiệm trong kênh xem trước. Tìm hiểu thêm về các phiên bản nhân bản .
Từ bất kỳ thư mục nào, hãy chạy lệnh sau:
firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:live
Thay thế từng trình giữ chỗ bằng nội dung sau:
SOURCE_SITE_ID và TARGET_SITE_ID : Đây là các ID của Trang web lưu trữ có chứa các kênh.
- Đối với trang web Lưu trữ mặc định của bạn, hãy sử dụng ID dự án Firebase của bạn.
- Bạn có thể chỉ định các trang web trong cùng một dự án Firebase hoặc thậm chí trong các dự án Firebase khác nhau.
SOURCE_CHANNEL_ID : Đây là số nhận dạng cho kênh hiện đang phục vụ phiên bản bạn muốn triển khai cho kênh trực tiếp của mình.
- Đối với kênh trực tiếp, hãy sử dụng
live
làm ID kênh.
- Đối với kênh trực tiếp, hãy sử dụng
Xem các thay đổi của bạn (bước tiếp theo).
Tùy chọn 2: Triển khai từ thư mục dự án cục bộ của bạn đến kênh trực tiếp của bạn
Tùy chọn này cung cấp cho bạn sự linh hoạt để điều chỉnh cấu hình dành riêng cho kênh trực tiếp hoặc để triển khai ngay cả khi bạn chưa sử dụng kênh xem trước.
Từ thư mục gốc của thư mục dự án cục bộ của bạn, hãy chạy lệnh sau:
firebase deploy --only hosting
Xem các thay đổi của bạn (bước tiếp theo).
Bước 4: Xem các thay đổi của bạn trên trang web trực tiếp của bạn
Cả hai tùy chọn trên đều triển khai nội dung và cấu hình Dịch vụ lưu trữ của bạn cho các trang web sau:
Các miền phụ do Firebase cung cấp cho trang web Lưu trữ mặc định của bạn và bất kỳ trang web Lưu trữ bổ sung nào:
SITE_ID .web.app
(nhưPROJECT_ID .web.app
)
SITE_ID .firebaseapp.com
(nhưPROJECT_ID .firebaseapp.com
)Bất kỳ miền tùy chỉnh nào bạn đã kết nối với (các) Trang web lưu trữ của mình
Để hạn chế việc triển khai ở một trang web Lưu trữ cụ thể, hãy chỉ định mục tiêu triển khai trong lệnh CLI của bạn.
Các hoạt động và thông tin triển khai khác
Thêm một bình luận cho việc triển khai
Bạn có thể tùy ý thêm nhận xét vào triển khai. Nhận xét này sẽ hiển thị cùng với thông tin triển khai khác trên bảng điều khiển Lưu trữ trong bảng điều khiển Firebase. Ví dụ:
firebase deploy --only hosting -m "Deploying the best new feature ever."
Thêm các tác vụ theo kịch bản trước khi triển khai và sau khi triển khai
Bạn có thể tùy ý 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 sau khi triển khai. Ví dụ: một hook postdeploy có thể thông báo cho quản trị viên về các triển khai nội dung trang mới. Tham khảo tài liệu Firebase CLI để biết thêm chi tiết.
Bộ nhớ đệm nội dung được triển khai
Khi có yêu cầu về nội dung tĩnh , Dịch vụ lưu trữ Firebase sẽ tự động lưu nội dung vào bộ đệm ẩn trên CDN. Nếu bạn triển khai lại nội dung trang web của mình, Firebase sẽ tự động xóa tất cả nội dung tĩnh được lưu trong bộ nhớ cache của bạn trên CDN để các yêu cầu mới nhận được nội dung mới của bạn.
Lưu ý rằng bạn có thể định cấu hình bộ nhớ đệm cho nội dung động .
Phục vụ qua HTTPS
Đảm bảo rằng tất cả các tài nguyên bên ngoài không được lưu trữ trên Dịch vụ lưu trữ Firebase đều được tải qua SSL (HTTPS), bao gồm mọi tập lệnh bên ngoài. Hầu hết các trình duyệt không cho phép người dùng tải "nội dung hỗn hợp" (lưu lượng SSL và không phải SSL).
Bước tiếp theo
Tích hợp với GitHub và lặp lại nội dung đã xem trước của bạn bằng cách thiết lập Hành động GitHub .
Tìm hiểu thêm về khả năng lưu trữ:
Hãy xem tài liệu đầy đủ về Firebase CLI .
Chuẩn bị khởi chạy ứng dụng của bạn:
- Thiết lập cảnh báo ngân sách cho dự án của bạn trong Google Cloud Console.
- Theo dõi bảng điều khiển Sử dụng và thanh toán trong bảng điều khiển Firebase để có được bức tranh tổng thể về việc sử dụng dự án của bạn trên nhiều dịch vụ Firebase. Bạn cũng có thể truy cập bảng điều khiển Sử dụng dịch vụ lưu trữ để biết thêm thông tin sử dụng chi tiết.
- Xem lại danh sách kiểm tra khởi chạy Firebase .