Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Quản lý kênh trực tiếp và xem trước, bản phát hành và phiên bản cho trang web của bạn

Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

Dịch vụ lưu trữ Firebase cung cấp công cụ thông qua cả bảng điều khiển Firebase và CLI Firebase để quản lý các kênh, bản phát hành và phiên bản cho trang web Lưu trữ của bạn.

Tổng quan về cơ sở hạ tầng Hosting

Hiểu cơ sở hạ tầng lưu trữ giúp bạn hiểu các tùy chọn quản lý được mô tả trên trang này.

Mọi dự án Firebase đều có một trang Lưu trữ mặc định có quyền truy cập vào tất cả các tài nguyên của dự án (cơ sở dữ liệu, xác thực, chức năng, v.v.). Trang web chứa một hoặc nhiều kênh , trong đó mỗi kênh được liên kết với một URL phục vụ nội dung cụ thể và cấu hình Lưu trữ.

hình ảnh phân cấp của Firebase Hosting

Mỗi trang web Lưu trữ đều có kênh "trực tiếp" phục vụ nội dung và cấu hình Lưu trữ tại (1) miền phụ do Firebase cung cấp của trang web ( SITE_ID .web.appSITE_ID .firebaseapp.com ) và (2) mọi miền tùy chỉnh được kết nối . Bạn cũng có thể tùy ý tạo các kênh "xem trước" phục vụ nội dung và cấu hình của riêng chúng tại các "URL xem trước" tạm thời, có thể chia sẻ ( SITE_ID -- CHANNEL_ID - RANDOM_HASH .web.app ).

Nội dung và cấu hình do mỗi kênh cung cấp được đóng gói thành một đối tượng phiên bản có mã định danh duy nhất. Khi bạn triển khai tới trang web của mình, Firebase sẽ tạo một đối tượng phát hành trỏ đến một phiên bản cụ thể. Một bản phát hành chứa siêu dữ liệu về quá trình triển khai, chẳng hạn như ai đã triển khai và thời điểm họ triển khai.

Từ bảng điều khiển Lưu trữ của dự án Firebase , bạn có thể xem toàn bộ lịch sử phát hành kênh trực tiếp của mình trong bảng Lịch sử phát hành . Nếu bạn có nhiều Trang web lưu trữ , hãy nhấp vào Xem cho trang web mong muốn để xem lịch sử phát hành của nó. Nếu bạn có bất kỳ kênh xem trước nào, chúng cũng sẽ được hiển thị trên bảng điều khiển Lưu trữ.

Quản lý cài đặt của kênh

Đối với mỗi kênh của trang web của bạn, bạn có thể kiểm soát cài đặt của nó. Một số cài đặt, chẳng hạn như hết hạn kênh, chỉ áp dụng cho các kênh xem trước.

Giới hạn số lượng bản phát hành để giữ

Mỗi khi bạn triển khai một kênh (và tạo một bản phát hành), Dịch vụ lưu trữ sẽ giữ phiên bản được liên kết với bản phát hành trước đó trong bộ lưu trữ Lưu trữ của dự án. Bạn có thể đặt số lượng bản phát hành cần giữ cho từng kênh trong dự án của mình, cả kênh trực tiếp và kênh xem trước.

  • Tại sao Hosting giữ các bản phát hành trước?
    Đối với kênh trực tiếp của bạn, việc giữ các bản phát hành trước cho phép bạn quay lại phiên bản trước của trang web nếu cần. Đối với các kênh xem trước của bạn, tính năng khôi phục chưa khả dụng.

  • Tại sao giới hạn số lượng phát hành để giữ?
    Tính năng này có thể giúp bạn kiểm soát mức độ sử dụng bộ nhớ Lưu trữ của dự án vì nội dung của các bản phát hành trước được giữ trong bộ nhớ này. Bạn có thể theo dõi dung lượng Lưu trữ của mình từ tab Lưu trữ trong bảng điều khiển.

  • Điều gì xảy ra khi bạn giới hạn các bản phát hành để giữ?
    Khi bạn đặt giới hạn giữ lại các bản phát hành, nội dung của bất kỳ bản phát hành nào vượt quá giới hạn đã đặt của bạn sẽ được lên lịch xóa, bắt đầu với bản phát hành cũ nhất trước .

Dưới đây là cách đặt giới hạn bộ nhớ phát hành cho kênh:

  1. Trong bảng điều khiển Firebase , hãy truy cập hộp thoại cài đặt bộ nhớ phát hành:

    • Đối với kênh trực tiếp của bạn
      Trong bảng Lịch sử phát hành cho trang web của bạn, hãy nhấp vào , sau đó chọn Phát hành cài đặt bộ nhớ .

    • Đối với bất kỳ kênh xem trước nào
      Trong hàng dành cho kênh xem trước, hãy nhấp vào , sau đó chọn Cài đặt kênh .

  2. Nhập số lượng bản phát hành mà bạn muốn giữ lại, sau đó nhấp vào Lưu .

Đặt ngày hết hạn của kênh xem trước

Theo mặc định, kênh xem trước sẽ hết hạn sau 7 ngày kể từ ngày tạo nhưng kênh trực tiếp trên trang web của bạn sẽ không bao giờ hết hạn.

Khi một kênh xem trước hết hạn, kênh đó cùng với các bản phát hành và các phiên bản liên quan sẽ được lên lịch xóa trong vòng 24 giờ. URL xem trước được liên kết cũng bị hủy kích hoạt. Một ngoại lệ đối với việc xóa phiên bản này là nếu một phiên bản được liên kết với một bản phát hành khác (ví dụ: điều này xảy ra nếu bạn sao chép một phiên bản từ kênh này sang kênh khác trong cùng một trang web ).

Dịch vụ lưu trữ hỗ trợ hai cách khác nhau để kiểm soát ngày hết hạn của kênh:

  • Bảng điều khiển căn cứ hỏa lực
    Trong hàng dành cho kênh xem trước, hãy nhấp vào , sau đó chọn Cài đặt kênh . Nhập ngày và thời gian hết hạn.

  • Firebase CLI
    Khi bạn triển khai kênh xem trước của mình, hãy chuyển cờ --expires DURATION , ví dụ:

    firebase hosting:channel:deploy new-awesome-feature --expires 7d

    Thời hạn có thể lên đến 30 ngày kể từ ngày triển khai. Sử dụng h cho giờ, d cho ngày và w cho tuần (ví dụ: 12h , 7d , 2w tương ứng).

Sao chép một phiên bản từ kênh này sang kênh khác

Bạn có thể sao chép phiên bản đã triển khai từ một kênh sang một kênh khác. Bạn có thể sao chép trên các kênh trực tiếp hoặc xem trước, trên các trang web Lưu trữ hoặc thậm chí trên các dự án Firebase.

Lệnh sao chép cũng triển khai tới kênh "mục tiêu" để cấu hình và nội dung Dịch vụ lưu trữ được sao chép được tự động phân phối tại URL được liên kết của kênh "mục tiêu".

Tính năng này hữu ích cho việc theo dõi phiên bản hoặc nếu bạn muốn chắc chắn rằng bạn đang triển khai chính xác nội dung mà bạn đã xem và/hoặc thử nghiệm trên một kênh khác. Dưới đây là một số ví dụ:

  • Sao chép từ kênh xem trước "QA" sang kênh trực tiếp trên trang web của bạn (đang phát trực tiếp!)

  • Sao chép từ kênh trực tiếp trên trang web của bạn sang kênh xem trước "gỡ lỗi" (như trước khi khôi phục)

  • Sao chép từ một kênh trong dự án Firebase "dàn dựng" của bạn sang kênh xem trước trong dự án Firebase "prod" của bạn

Để sao chép một phiên bản, hãy chạy lệnh sau từ bất kỳ thư mục nào:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

Thay thế từng trình giữ chỗ bằng nội dung sau:

  • SOURCE_SITE_IDTARGET_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 Lưu trữ trong cùng một dự án Firebase hoặc thậm chí trong các dự án Firebase khác nhau.
  • SOURCE_CHANNEL_IDTARGET_CHANNEL_ID : Đây là các mã định danh cho các kênh.

    • Đối với kênh trực tiếp, hãy sử dụng live làm ID kênh.
    • Nếu kênh "mục tiêu" được chỉ định chưa tồn tại, lệnh này sẽ tạo kênh trước khi triển khai kênh đó.

Quay lại phiên bản trước của trang web của bạn

Bạn có thể quay lại để phục vụ phiên bản trước của kênh trực tiếp trên trang web của mình. Hành động này hữu ích nếu bản phát hành hiện tại của bạn gặp sự cố và bạn muốn quay lại để phân phối phiên bản trang web đang hoạt động đã biết của mình. Hoặc có lẽ trang web của bạn đã phục vụ nội dung tạm thời cho một kỳ nghỉ hoặc sự kiện đặc biệt, nhưng bây giờ bạn muốn quay lại để phục vụ nội dung "thông thường" của mình.

Bằng cách quay lui, bạn tạo một bản phát hành mới phục vụ cùng một phiên bản nội dung như bản phát hành trước đó. Trong bảng Lịch sử phát hành của bạn, cả hai bản phát hành sẽ liệt kê cùng một mã định danh phiên bản.

Đây là cách quay lại:

  1. Trong bảng điều khiển Firebase , trong bảng Lịch sử phát hành cho trang web của bạn, hãy di chuột qua mục phát hành trước đó mà bạn muốn quay lại.

  2. Nhấp vào , sau đó chọn Quay lại .

Xóa bản phát hành theo cách thủ công

Bạn có thể cần phải xóa một bản phát hành khỏi kênh trực tiếp của mình theo cách thủ công để giải phóng bộ nhớ Lưu trữ cho dự án của mình. Bạn chỉ có thể xóa các bản phát hành trước đó, chứ không phải bản phát hành hiện đang được phân phối trên trang web trực tiếp của bạn.

Khi bạn xóa một bản phát hành, trên thực tế, bạn đang xóa nội dung của nó. Nội dung này được lên lịch xóa trong vòng 24 giờ. Bản thân đối tượng phát hành được giữ lại để bạn vẫn có thể xem siêu dữ liệu của nó (người đã triển khai và khi họ triển khai).

Sau đây là cách xóa một bản phát hành:

  1. Trong bảng điều khiển Firebase , trong bảng Lịch sử phát hành cho trang web của bạn, hãy di chuột qua mục phát hành trước đó mà bạn muốn xóa.

  2. Nhấp vào , sau đó chọn Xóa .

Xóa kênh xem trước theo cách thủ công

Bạn có thể xóa kênh xem trước nhưng không thể xóa kênh trực tiếp trên trang web của mình.

Khi bạn xóa kênh xem trước, kênh đó cùng với các bản phát hành và phiên bản liên quan của kênh đó sẽ được lên lịch xóa trong vòng 24 giờ. URL xem trước được liên kết cũng bị hủy kích hoạt. Một ngoại lệ đối với việc xóa phiên bản là nếu một phiên bản được liên kết với một bản phát hành khác (ví dụ: điều này xảy ra nếu bạn sao chép một phiên bản từ kênh này sang kênh khác trong cùng một trang web ).

Dịch vụ lưu trữ hỗ trợ hai cách khác nhau để xóa kênh xem trước:

  • Bảng điều khiển căn cứ hỏa lực
    Trong hàng dành cho kênh xem trước, hãy nhấp vào , sau đó chọn Xóa kênh . Xác nhận việc xóa.

  • Firebase CLI
    Chạy lệnh sau từ bất kỳ thư mục nào:

    firebase hosting:channel:delete CHANNEL_ID

Các lệnh CLI cho các kênh xem trước và nhân bản

Các lệnh cho các kênh xem trước

Tất cả các lệnh cho các kênh xem trước đều hỗ trợ các mục tiêu triển khai nếu bạn có nhiều trang web Lưu trữ .

Chỉ huy Sự miêu tả
firebase hosting:channel:create CHANNEL_ID

Tạo kênh xem trước mới trong Trang web lưu trữ mặc định bằng cách sử dụng CHANNEL_ID chỉ định

Lệnh này không triển khai cho kênh.

firebase hosting:channel:delete 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 một trang web.

firebase hosting:channel:deploy CHANNEL_ID

Triển khai cấu hình và nội dung Dịch vụ lưu trữ của bạn vào kênh xem trướ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 web lưu trữ mặc định trước khi triển khai cho kênh.

firebase hosting:channel:list 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
firebase hosting:channel:open CHANNEL_ID Mở trình duyệt tới URL của kênh được chỉ định hoặc trả lại URL nếu không thể mở trong trình duyệt

Các lệnh để sao chép phiên bản

Chỉ huy Sự miêu tả
firebase hosting:clone \
SOURCE_SITE_ID : SOURCE_CHANNEL_ID \
TARGET_SITE_ID : TARGET_CHANNEL_ID

Sao chép phiên bản được triển khai gần đây nhất trên kênh "nguồn" đã chỉ định sang kênh "đích" đã chỉ định

Lệnh này cũng triển khai đến kênh "mục tiêu" được chỉ định. Nếu kênh "mục tiêu" chưa tồn tại, lệnh này sẽ tạo một kênh xem trước mới trong Trang web lưu trữ "mục tiêu" trước khi triển khai cho kênh.

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

Sao chép phiên bản đã chỉ định vào kênh "mục tiêu" đã chỉ định

Lệnh này cũng triển khai đến kênh "mục tiêu" được chỉ định. Nếu kênh "mục tiêu" chưa tồn tại, lệnh này sẽ tạo một kênh xem trước mới trong Trang web lưu trữ "mục tiêu" trước khi triển khai cho kênh.

Bạn có thể tìm thấy VERSION_ID trong bảng điều khiển Lưu trữ của bảng điều khiển Firebase.