Zarządzaj transmisjami na żywo kanały podglądu, wersje i wersje witryny

Firebase Hosting udostępnia narzędzia w konsoli Firebase i w interfejsie wiersza poleceń Firebase, które umożliwiają zarządzanie kanałami, wersjami i wersjami witryny Hosting.

Omówienie infrastruktury Hosting

Poznanie infrastruktury Hosting ułatwia zrozumienie opcji zarządzania opisanych na tej stronie.

Każdy projekt Firebase ma domyślną witrynę Hosting z dostępem do wszystkich zasobów projektu (baz danych, uwierzytelniania, funkcji itp.). Witryna zawiera co najmniej 1 kanał, a każdy kanał jest powiązany z adresem URL, który obsługuje określone treści i konfigurację Hosting.

obraz <span class=Hierarchia Hostingu Firebase” />

Każda witryna Hosting ma „kanał na żywo”, który udostępnia treści i konfigurację Hosting (1) subdomenom witryny udostępnionym przez Firebase (SITE_ID.web.app i SITE_ID.firebaseapp.com) oraz (2) wszystkim połączonym domonom niestandardowym. Opcjonalnie możesz też utworzyć „kanały podglądu”, które będą wyświetlać własne treści i konfigurację pod tymczasowymi, możliwymi do udostępnienia „adresami URL podglądu” (SITE_ID--CHANNEL_ID-RANDOM_HASH.web.app).

Treści i konfiguracja obsługiwane przez każdy kanał są pakowane w obiekt wersja, który ma unikalny identyfikator. Podczas wdrażania w witrynie Firebase tworzy obiekt release, który wskazuje na konkretną wersję. Wersja zawiera metadane dotyczące wdrożenia, takie jak informacje o tym, kto i kiedy je wdrożył.

Na panelu Hosting projektu Firebase możesz zobaczyć pełną historię wersji kanału na żywo w tabeli Historia wersji. Jeśli masz kilka witryn Hosting, kliknij Wyświetl obok wybranej witryny, aby zobaczyć historię jej wersji. Jeśli masz kanały w wersji zapoznawczej, są one również wyświetlane na panelu Hosting.

Zarządzanie ustawieniami kanału

Możesz kontrolować ustawienia każdego kanału w witrynie. Niektóre ustawienia, takie jak wygaśnięcie kanału, są dostępne tylko w przypadku kanałów w wersji próbnej.

Ogranicz liczbę wersji, które mają zostać zachowane

Za każdym razem, gdy wdrażasz coś w kanale (i tworzysz wersję), Hosting zachowuje wersję powiązaną z poprzednią wersją w limicie Hosting projektu. Możesz ustawić liczbę wersji, które mają być zachowane na każdym kanale w projekcie, zarówno na kanale na żywo, jak i na kanale podglądu.

  • Dlaczego Hosting zachowuje poprzednie wersje?
    W przypadku kanału na żywo przechowywanie poprzednich wersji umożliwia w razie potrzeby przywrócenie poprzedniej wersji witryny. W przypadku kanałów wersji próbnej nie można jeszcze cofnąć zmian.

  • Dlaczego należy ograniczyć liczbę wersji, które mają zostać zachowane?
    Ta funkcja może Ci pomóc kontrolować poziom wykorzystania miejsca na dane Hosting w projekcie, ponieważ treści z poprzednich wersji są przechowywane w tym miejscu. Możesz monitorować ilość miejsca na dane w usłudze Hosting na karcie Pamięć w konsoli.

  • Co się stanie, gdy ograniczysz liczbę wersji do zachowania?
    Gdy ustawisz limit liczby wersji do zachowania, treści z wersji, których liczba przekracza ten limit, zostaną zaplanowane do usunięcia, zaczynając od najstarszych wersji.

Aby ustawić limit miejsca na dane dla kanału:

  1. W konsoli Firebaseotwórz okno ustawień miejsca na dane wersji:

    • Na kanale na żywo
      w tabeli Historia wersji dla witryny kliknij , a następnie wybierz Ustawienia miejsca na wersje.

    • Przy dowolnym kanale podglądu
      W wierszu kanału podglądu kliknij i wybierz Ustawienia kanału.

  2. Wpisz liczbę wersji, które chcesz zachować, a następnie kliknij Zapisz.

Ustawianie daty wygaśnięcia kanału z podglądem

Domyślny kanał z podglądem wygasa po 7 dniach od daty utworzenia, ale kanał na żywo Twojej witryny nigdy nie wygaśnie.

Po wygaśnięciu kanału podglądu kanał zostanie usunięty w ciągu 24 godzin wraz z wersjami i powiązanymi z nim wersjami. Powiązany adres URL podglądu również jest dezaktywowany. Wyjątkiem od tej zasady jest sytuacja, gdy wersja jest powiązana z inną wersją (dzieje się tak na przykład, gdy klonujesz wersję z jednego kanału do drugiego w ramach tej samej witryny).

Hosting udostępnia dwa sposoby kontrolowania wygaśnięcia kanału:

  • Firebase konsoli
    W wierszu kanału podglądu kliknij , a następnie wybierz Ustawienia kanału. Wpisz datę i godzinę wygaśnięcia.

  • Firebase CLI
    Podczas wdrażania na kanał wersji podglądowej prześlij flagę --expires DURATION, na przykład:

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

    Czas wygaśnięcia może wynosić do 30 dni od daty wdrożenia. Użyj wartości h dla godzin, d dla dni i w dla tygodni (odpowiednio 12h, 7d i 2w).

Kopiowanie wersji z jednego kanału na inny

Możesz sklonować wdrożony wariant z jednego kanału na inny. Możesz klonować kanały na żywo lub podglądu, witryny Hosting, a nawet projekty Firebase.

Polecenie klonowania wdraża też kanał „docelowy”, dzięki czemu sklonowane treści i konfiguracja Hosting są automatycznie udostępniane pod adresem URL powiązanym z kanałem „docelowy”.

Ta funkcja jest przydatna przy śledzeniu wersji lub gdy chcesz mieć pewność, że wdrażasz dokładnie te treści, które zostały przez Ciebie wyświetlone lub przetestowane w innym kanale. Oto przykłady:

  • Klonowanie z kanału podglądu „QA” na kanał na żywo Twojej witryny.

  • Klonowanie z kanału na żywo witryny na kanał podglądu „debugowania” (jak przed cofnięciem zmian)

  • Klonowanie z kanału w „testowym” projekcie Firebase do kanału podglądu w „produkcyjnym” projekcie Firebase

Aby skopiować wersję, uruchom to polecenie z dowolnego katalogu:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

Zastąp każdy obiekt zastępczy takim ciągiem:

  • SOURCE_SITE_IDTARGET_SITE_ID: to identyfikatory witryn Hosting, które zawierają kanały.

    • W przypadku domyślnej witryny Hosting użyj identyfikatora projektu Firebase.
    • Możesz wskazać Hosting witryny, które są w tym samym projekcie Firebase, a nawet w różnych projektach Firebase.
  • SOURCE_CHANNEL_ID i TARGET_CHANNEL_ID: to identyfikatory kanałów.

    • W przypadku kanału na żywo jako identyfikator kanału użyj live.
    • Jeśli określony kanał „docelowy” jeszcze nie istnieje, to polecenie tworzy kanał przed jego wdrożeniem.

Przywracanie poprzedniej wersji witryny

Możesz przywrócić poprzednią wersję kanału na żywo witryny. Ta czynność jest przydatna, jeśli obecna wersja ma problem i chcesz przywrócić wersję, która działała wcześniej. Może też być tak, że Twoja witryna wyświetlała treści tymczasowe na czas świąt lub specjalnego wydarzenia, a teraz chcesz przywrócić „zwykłe” treści.

W efekcie tworzysz nową wersję, która zawiera tę samą treść co poprzednia. W tabeli Historia wersji oba wydania będą miały ten sam identyfikator wersji.

Aby cofnąć zmiany:

  1. W konsoli Firebase w tabeli Historia wersji dotyczącej Twojej witryny najedź kursorem na poprzedni wpis wersji, do którego chcesz przywrócić.

  2. Kliknij , a następnie wybierz Cofnij.

Ręczne usuwanie wersji

Aby zwolnić Hosting miejsca na dane na potrzeby projektu, konieczne może być ręczne usunięcie wersji z kanału na żywo. Możesz usuwać tylko poprzednie wersje, a nie wersję, która jest obecnie wyświetlana w witrynie.

Gdy usuniesz wersję, usuwasz jej zawartość, która zostanie zaplanowana do usunięcia w ciągu 24 godzin. Sam obiekt wersji jest przechowywany, aby można było nadal wyświetlać jego metadane (kto i kiedy go wdrożył).

Aby usunąć wersję:

  1. W konsoli Firebase w tabeli Historia wersji dotyczącej Twojej witryny najedź kursorem na poprzedni wpis wersji, który chcesz usunąć.

  2. Kliknij , a następnie wybierz Usuń.

Ręczne usuwanie plików

W Firebase Hosting głównym sposobem usuwania wybranych plików z wdrożonej witryny jest ich usunięcie na komputerze lokalnym, a następnie ponowne wdrożenie.

Ręczne usuwanie kanału podglądu

Aby wyświetlić podgląd kanału, kliknij go. W tym widoku możesz wyświetlać, usuwać i przywracać najnowsze wdrożenia i wersje, które są powiązane z określonym kanałem. Możesz usunąć kanał podglądu, ale nie możesz usunąć kanału aktywnego.

Gdy usuniesz kanał z podglądem, zostanie on usunięty wraz z wersjami i powiązanymi wersjami w ciągu 24 godzin. Powiązany URL podglądu zostanie również wyłączony. Wyjątkiem od zasady usuwania wersji jest sytuacja, gdy wersja jest powiązana z inną wersją (dzieje się tak na przykład, gdy klonujesz wersję z jednego kanału do drugiego w ramach tej samej witryny).

Hosting obsługuje 2 sposoby usuwania kanału podglądu:

  • Firebase konsoli
    W wierszu kanału podglądu kliknij , a następnie wybierz Usuń kanał. Potwierdź usunięcie.

  • Firebase Interfejs wiersza poleceń
    Uruchom to polecenie z dowolnego katalogu:

    firebase hosting:channel:delete CHANNEL_ID

Polecenia wiersza poleceń dotyczące kanałów podglądu i ich klonowania

Polecenia dotyczące kanałów podglądu

Jeśli masz kilka witryn Hosting, wszystkie polecenia dotyczące kanałów podglądu obsługują cele wdrożenia.

Polecenie Opis
firebase hosting:channel:create CHANNEL_ID

Tworzy nowy kanał podglądu w domyślnej witrynie Hosting z wykorzystaniem podanego CHANNEL_ID

To polecenie nie jest wdrażane na kanale.

firebase hosting:channel:delete CHANNEL_ID

usuwa określony kanał podglądu.

Nie możesz usunąć kanału na żywo witryny.

firebase hosting:channel:deploy CHANNEL_ID

Wdraża Hostingtreści i konfigurację na określony kanał podglądu.

Jeśli kanał podglądu nie istnieje jeszcze, to polecenie utworzy go na stronie domyślnej Hosting, zanim wdrożysz go na kanale.

firebase hosting:channel:list Zawiera listę wszystkich kanałów (w tym „aktywnych”) w domyślnej witrynie Hosting
firebase hosting:channel:open CHANNEL_ID Otwiera przeglądarkę na wskazanym kanale lub zwraca adres URL, jeśli otwarcie w przeglądarce nie jest możliwe

Polecenia do klonowania wersji

Polecenie Opis
firebase hosting:clone \
SOURCE_SITE_ID:SOURCE_CHANNEL_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

Kopiuje najnowszą wdrożoną wersję z określonego kanału „źródłowego” do określonego kanału „docelowego”

To polecenie wdraża również na określony „docelowy” kanał. Jeśli kanał „target” nie istnieje jeszcze, to polecenie utworzy nowy kanał podglądu w witrynie Hosting „target” przed wdrożeniem na tym kanale.

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

Klonuje określoną wersję na określonym kanale „docelowym”.

To polecenie wdraża również na określony „docelowy” kanał. Jeśli kanał „target” nie istnieje jeszcze, to polecenie utworzy nowy kanał podglądu w witrynie Hosting „target” przed wdrożeniem na tym kanale.

VERSION_ID znajdziesz w panelu Hosting konsoli Firebase.