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ą Hosting witrynę 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 udostępnia określone treści i konfigurację Hosting.

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 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 data wygaśnięcia 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 wersję na kanał (i tworzysz wersję), Hosting przechowuje wersję powiązaną z poprzednią wersją w magazynie Hosting Twojego 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.

    • W przypadku dowolnego kanału podglądu
      W wierszu kanału podglądu kliknij , a następnie 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ślnie kanał z podglądem wygasa po 7 dniach od daty jego utworzenia, ale kanał na żywo Twojej witryny nigdy nie wygaśnie.

Gdy kanał z wersjami podglądowymi wygaśnie, kanał, jego wersje produkcyjne i powiązane z nimi wersje zostaną usunięte w ciągu 24 godzin. Powiązany URL podglądu zostanie również wyłączony. 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 obsługuje 2 sposoby kontrolowania daty 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).

Klonowanie 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 clone wdraża też kanał „target”, aby sklonowane treści i konfiguracja Hosting były automatycznie wyświetlane pod powiązanym adresem URL kanału „target”.

Ta funkcja jest przydatna do śledzenia wersji lub jeśli chcesz mieć pewność, że wdrażasz dokładnie te treści, które zostały wyświetlone lub przetestowane na innym kanale. Oto przykłady:

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

  • Klonowanie z kanału na żywo Twojej 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 sklonować 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 z tych ciągów zastępczych:

  • 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 określić Hosting witryn w tym samym projekcie Firebase lub 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ł „target” nie istnieje jeszcze, to polecenie utworzy go przed 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 obie wersje będą miały ten sam identyfikator.

Aby przywrócić poprzednią wersję:

  1. W konsoli Firebase w tabeli Historia wersji dotyczącej Twojej witryny najedź kursorem na poprzednią wersję, do której 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 wydania 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 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 konkretnym kanałem. Możesz usunąć kanał podglądu, ale nie możesz usunąć kanału aktywnego.

Gdy usuniesz kanał podglądu, kanał wraz z jego wersjami produkcyjnymi i powiązanymi wersjami zostanie usunięty 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 W wierszu poleceń:
    Uruchom to polecenie z dowolnego katalogu:

    firebase hosting:channel:delete CHANNEL_ID

Polecenia interfejsu 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, używając określonego 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 Wyświetla wszystkie kanały (w tym kanał „na żywo”) w domyślnej witrynie Hosting.
firebase hosting:channel:open CHANNEL_ID Otwiera przeglądarkę na określony adres URL kanału lub zwraca ten adres URL, jeśli otwarcie go 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

Klonuje ostatnio wdrożony wariant na określonym kanale „source” i przesyła go na określony kanał „target”.

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.