Firebase Hosting udostępnia narzędzia w konsoli Firebase i interfejsie wiersza poleceń Firebase, które umożliwiają zarządzanie kanałami, wersjami i wersjami produkcyjnymi witryny Hosting.
Omówienie infrastruktury Hosting
Zrozumienie infrastruktury Hosting pomoże Ci poznać opcje zarządzania opisane na tej stronie.
Każdy projekt w Firebase ma domyślną Hosting 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śloną treść i konfigurację Hosting.
Hosting
Hierarchia Firebase Hosting" />
Każda witryna Hosting ma kanał „live”, który obsługuje treści i konfigurację Hosting w (1) poddomenach udostępnianych przez Firebase (SITE_ID.web.app i SITE_ID.firebaseapp.com) oraz (2) wszystkich połączonych domenach niestandardowych. Opcjonalnie możesz też utworzyć
kanały „podglądu”, które obsługują własne treści i konfigurację pod tymczasowymi,
udostępnianymi „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 version z unikalnym identyfikatorem. Gdy wdrożysz witrynę, Firebase utworzy obiekt release , który wskazuje konkretną wersję. Wersja zawiera metadane dotyczące wdrożenia, np. kto i kiedy wdrożył.
Na panelu Hosting projektu Firebase, możesz zobaczyć pełną historię wersji kanału „live” w tabeli Historia wersji. Jeśli masz kilka witryn Hosting, kliknij Wyświetl przy wybranej witrynie, aby zobaczyć jej historię wersji. Jeśli masz jakieś kanały podglądu, będą one też widoczne na panelu Hosting.
Zarządzanie ustawieniami kanału
W przypadku każdego kanału w witrynie możesz kontrolować jego ustawienia. Niektóre ustawienia, np. wygaśnięcie kanału, mają zastosowanie tylko do kanałów podglądu.
Ograniczanie liczby wersji do zachowania
Za każdym razem, gdy wdrożysz kanał (i utworzysz wersję), Hosting zachowuje wersję powiązaną z poprzednią wersją w magazynie Hosting projektu. Możesz ustawić liczbę wersji do zachowania dla każdego kanału w projekcie, zarówno dla kanałów „live”, jak i kanałów podglądu.
Dlaczego Hosting zachowuje poprzednie wersje?
W przypadku kanału „live” zachowywanie poprzednich wersji umożliwia wycofanie zmian w razie potrzeby do poprzedniej wersji witryny. W przypadku kanałów podglądu przywracanie nie jest jeszcze dostępne.Dlaczego warto ograniczyć liczbę wersji do zachowania?
Ta funkcja może pomóc Ci kontrolować poziom wykorzystania magazynu Hosting projektu, ponieważ w tym magazynie są przechowywane treści poprzednich wersji. Magazyn Hosting możesz monitorować na karcie Miejsce na dane w konsoli.Co się stanie, gdy ograniczysz liczbę wersji do zachowania?
Gdy ustawisz limit wersji do zachowania, treści wszystkich wersji powyżej tego limitu zostaną przeznaczone do usunięcia, zaczynając od najstarszych wersji.
Aby ustawić limit miejsca na wersje w przypadku kanału:
W konsoli Firebase otwórz Hosting i usługi bezserwerowe > Hosting aby otworzyć okno ustawień miejsca na wersje:
W przypadku kanału „live”
W tabeli Historia wersji 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.
Wpisz liczbę wersji, które chcesz zachować, a następnie kliknij Zapisz.
Ustawianie wygaśnięcia kanału podglądu
Domyślnie kanał podglądu wygasa po 7 dniach od daty utworzenia, ale kanał „live” witryny nigdy nie wygaśnie.
Gdy kanał podglądu wygaśnie, kanał oraz jego wersje produkcyjne i wersje z nim powiązane zostaną usunięte w ciągu 24 godzin. Powiązany adres URL podglądu zostanie też wyłączony. Wyjątkiem od usunięcia wersji jest sytuacja, gdy wersja jest powiązana z inną wersją (np. jeśli sklonujesz wersję z jednego kanału na inny w tej samej witrynie).
Hosting obsługuje 2 sposoby kontrolowania wygaśnięcia kanału:
Firebase konsola
W wierszu kanału podglądu kliknij , a następnie wybierz Ustawienia kanału. Wpisz datę i godzinę wygaśnięcia.Firebase CLI
Gdy wdrażasz kanał podglądu, przekaż flagę--expires DURATION, na przykład:firebase hosting:channel:deploy new-awesome-feature --expires 7d
Wygaśnięcie może nastąpić maksymalnie 30 dni od daty wdrożenia. Używaj
hw przypadku godzin,dw przypadku dni iww przypadku tygodni (np.12h,7d,2w, odpowiednio).
Klonowanie wersji z jednego kanału na inny
Możesz sklonować wdrożoną wersję z jednego kanału na inny. Możesz klonować między kanałami „live” i kanałami podglądu, między witrynami Hosting, a nawet między projektami Firebase.
Polecenie klonowania wdraża też na "docelowym" kanale, dzięki czemu sklonowane Hosting treści i konfiguracja są automatycznie obsługiwane pod adresem URL powiązanym z "docelowym" kanałem.
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. Przykłady:
Klonowanie z kanału podglądu „QA” na kanał „live” witryny (wdrożenie produkcyjne).
Sklonuj kanał „live” witryny do kanału podglądu „debug” (np. przed przywróceniem).
Klonowanie z kanału w projekcie w Firebase „staging” na kanał podglądu w projekcie w Firebase „prod”.
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 symbol zastępczy tymi elementami:
SOURCE_SITE_ID i TARGET_SITE_ID: są to identyfikatory witryn Hosting, które zawierają kanały.
- W przypadku domyślnej witryny Hosting użyj identyfikatora projektu w Firebase.
- Możesz określić witryny Hosting, które znajdują się w tym samym projekcie w Firebase lub nawet w różnych projektach w Firebase.
SOURCE_CHANNEL_ID i TARGET_CHANNEL_ID: są to identyfikatory kanałów.
- W przypadku kanału „live” użyj
livejako identyfikatora kanału. - Jeśli określony „docelowy” kanał jeszcze nie istnieje, to polecenie utworzy go przed wdrożeniem.
- W przypadku kanału „live” użyj
Wycofaj zmiany do poprzedniej wersji witryny
Możesz wycofać zmiany, aby udostępnić poprzednią wersję kanału „live” witryny. Ta czynność jest przydatna, jeśli bieżąca wersja ma problem i chcesz wycofać zmiany, aby udostępnić znaną działającą wersję witryny. Może też się zdarzyć, że witryna udostępniała tymczasowe treści na święta lub wydarzenie specjalne, ale teraz chcesz wycofać zmiany, aby udostępniać „zwykłe” treści.
Przywracając, tworzysz nową wersję, która obsługuje tę samą wersję treści co poprzednia wersja. W tabeli Historia wersji obie wersje będą miały ten sam identyfikator wersji.
Aby wycofać zmiany:
W konsoli Firebase otwórz Hosting i usługi bezserwerowe > Hosting.
W tabeli Historia wersji witryny najedź kursorem na poprzedni wpis wersji, do którego chcesz wycofać zmiany.
Kliknij , a następnie wybierz Wycofaj zmiany.
Ręczne usuwanie wersji
Może być konieczne ręczne usunięcie wersji z kanału „live”, aby zwolnić miejsce na dane Hosting w Hosting na potrzeby projektu. Możesz usuwać tylko poprzednie wersje, a nie wersję, która jest obecnie obsługiwana w witrynie „live”.
Gdy usuniesz wersję, usuniesz jej zawartość, która zostanie usunięta w ciągu 24 godzin. Sam obiekt wersji jest zachowywany, aby można było nadal wyświetlać jego metadane (kto i kiedy wdrożył).
Aby usunąć wersję:
W konsoli Firebase otwórz Hosting i usługi bezserwerowe > Hosting.
W tabeli Historia wersji witryny najedź kursorem na poprzednią wersję, którą chcesz usunąć.
Kliknij , a następnie wybierz Usuń.
Ręczne usuwanie plików
W Firebase Hosting podstawowym sposobem usuwania wybranych plików z wdrożonej witryny jest usunięcie plików lokalnie, a następnie ponowne wdrożenie.
Ręczne usuwanie kanału podglądu
Możesz wyświetlić podgląd kanałów, klikając kanał, którego podgląd chcesz wyświetlić. W tym widoku możesz zobaczyć, usunąć i przywrócić najnowsze wdrożenia i wersje powiązane z danym kanałem. Możesz usunąć kanał podglądu, ale nie możesz usunąć kanału „live” witryny.
Gdy usuniesz kanał podglądu, kanał oraz jego wersje produkcyjne i wersje z nim powiązane zostaną usunięte w ciągu 24 godzin. Powiązany adres URL podglądu zostanie też wyłączony. Wyjątkiem od usunięcia wersji jest sytuacja, gdy wersja jest powiązana z inną wersją (np. jeśli sklonujesz wersję z jednego kanału na inny w tej samej witrynie).
Hosting obsługuje 2 sposoby usuwania kanału podglądu:
Firebase konsola
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 interfejsu wiersza poleceń dotyczące kanałów podglądu i klonowania
Polecenia dotyczące kanałów podglądu
Jeśli masz kilka witryn, wszystkie polecenia dotyczące kanałów podglądu obsługują cele wdrożenia.Hosting
| Polecenie | Opis |
|---|---|
firebase hosting:channel:create CHANNEL_ID
|
Tworzy nowy kanał podglądu w
domyślnej Hosting witrynie przy użyciu określonego
To polecenie nie wdraża na kanale. |
firebase hosting:channel:delete CHANNEL_ID
|
Usuwa określony kanał podglądu Nie możesz usunąć kanału „live” witryny. |
firebase hosting:channel:deploy CHANNEL_ID
|
Wdraża treści i konfigurację Hosting na określonym kanale podglądu Jeśli kanał podglądu jeszcze nie istnieje, to polecenie utworzy go w domyślnej Hosting witrynie przed wdrożeniem. |
firebase hosting:channel:list
|
Wyświetla listę wszystkich kanałów (w tym kanału „live”) w domyślnej Hosting witrynie |
firebase hosting:channel:open CHANNEL_ID
|
Otwiera przeglądarkę pod adresem URL określonego kanału lub zwraca adres URL jeśli nie można otworzyć go w przeglądarce |
Polecenia dotyczące klonowania wersji
| Polecenie | Opis |
|---|---|
firebase hosting:clone \
|
Klonuje ostatnio wdrożoną wersję na określonym „źródłowym” kanale na określony „docelowy” kanał To polecenie wdraża też na określonym „docelowym” kanale. Jeśli „docelowy” kanał jeszcze nie istnieje, to polecenie utworzy nowy kanał podglądu w „docelowej” Hosting witrynie przed wdrożeniem. |
firebase hosting:clone \
|
Klonuje określoną wersję na określony „docelowy” kanał To polecenie wdraża też na określonym „docelowym” kanale. Jeśli „docelowy” kanał jeszcze nie istnieje, to polecenie utworzy nowy kanał podglądu w „docelowej” Hosting witrynie przed wdrożeniem.
|