Zanim wdrożysz zmiany w działającej witrynie, warto je wyświetlić i przetestować. Firebase Hosting umożliwia wyświetlanie i testowanie zmian lokalnie oraz interakcję z emulowanymi zasobami backendu projektu. Jeśli chcesz, aby Twoi współpracownicy mogli wyświetlać i testować zmiany, Hosting może utworzyć udostępniane, tymczasowe adresy URL podglądu dla Twojej witryny. Obsługujemy nawet integrację z GitHubem, która umożliwia wdrażanie z żądania pull.
Zanim zaczniesz
Wykonaj czynności wymienione na stronie Hosting Pierwsze kroki, a w szczególności te zadania:
- Zainstaluj lub zaktualizuj interfejs wiersza poleceń Firebase do najnowszej wersji.
- Połącz lokalny katalog projektu (zawierający treści aplikacji) z projektem Firebase.
Opcjonalnie możesz wdrożyć treści i konfigurację Hosting aplikacji, ale nie jest to wymagane do wykonania czynności opisanych na tej stronie.
Krok 1. Testowanie lokalne
Jeśli szybko iterujesz lub chcesz, aby Twoja aplikacja wchodziła w interakcje z emulowanymi zasobami backendu projektu, możesz lokalnie przetestować treści i konfigurację Hostinglokalnie. Podczas testowania lokalnego Firebase obsługuje Twoją aplikację internetową pod adresem URL hostowanym lokalnie.
Hosting jest częścią Firebase Local Emulator Suite, co umożliwia aplikacji interakcję z emulowanymi treściami i konfiguracją Hosting, a także opcjonalnie z emulowanymi zasobami projektu (funkcjami, bazami danych i regułami).
(Opcjonalnie) Domyślnie aplikacja hostowana lokalnie będzie wchodzić w interakcje z rzeczywistymi, a nie emulowanymi, zasobami projektu (funkcjami, bazą danych, regułami itp.). Możesz też opcjonalnie połączyć aplikację, aby korzystała z dowolnych skonfigurowanych emulowanych zasobów projektu. Więcej informacji: Realtime Database | Cloud Firestore | Cloud Functions
W głównym katalogu projektu lokalnego uruchom to polecenie:
firebase emulators:start
Otwórz aplikację internetową pod lokalnym adresem URL zwróconym przez interfejs wiersza poleceń (zwykle
http://localhost:5000).Aby zaktualizować lokalny adres URL o zmiany, odśwież przeglądarkę.
Testowanie na innych urządzeniach lokalnych
Domyślnie emulatory odpowiadają tylko na żądania z localhost. Oznacza to, że będziesz mieć dostęp do hostowanych treści z przeglądarki internetowej na komputerze, ale nie z innych urządzeń w sieci. Jeśli chcesz testować na innych urządzeniach lokalnych, skonfiguruj firebase.json w ten sposób:
"emulators": {
// ...
"hosting": {
"port": 5000,
"host": "0.0.0.0"
}
}
Krok 2. Wyświetlanie podglądu i udostępnianie
Jeśli chcesz, aby inni mogli wyświetlić zmiany w Twojej aplikacji internetowej przed jej opublikowaniem, możesz użyć kanałów podglądu.
Po wdrożeniu na kanał podglądu Firebase obsługuje Twoją aplikację internetową pod „adresem URL podglądu”, który jest udostępnianym, tymczasowym adresem URL. Gdy używasz adresu URL podglądu, Twoja aplikacja internetowa wchodzi w interakcje z rzeczywistym backendem na potrzeby wszystkich zasobów projektu (z wyjątkiem funkcji "przypiętych" w konfiguracji przekierowań).
Pamiętaj, że chociaż adresy URL podglądu są trudne do odgadnięcia (ponieważ zawierają losowy hash), są one publiczne. Każdy, kto zna adres URL, może uzyskać do niego dostęp.
W głównym katalogu projektu lokalnego uruchom to polecenie:
firebase hosting:channel:deploy CHANNEL_ID
Zastąp CHANNEL_ID ciągiem znaków bez spacji (np.
feature_mission-2-mars). Ten identyfikator będzie używany do tworzenia adresu URL podglądu powiązanego z kanałem podglądu.Otwórz aplikację internetową pod adresem URL podglądu zwróconym przez interfejs wiersza poleceń. Będzie on wyglądać mniej więcej tak:
PROJECT_ID--CHANNEL_ID-RANDOM_HASH.web.appAby zaktualizować adres URL podglądu o zmiany, uruchom ponownie to samo polecenie. Upewnij się, że w poleceniu podajesz ten sam
CHANNEL_ID.
Dowiedz się więcej o zarządzaniu kanałami podglądu, w tym o ustawianiu daty wygaśnięcia kanału.
Firebase Hosting obsługuje działanie GitHub, które automatycznie tworzy i aktualizuje adres URL podglądu, gdy zatwierdzasz zmiany w żądaniu pull. Dowiedz się, jak skonfigurować i używać tego działania GitHub.
Krok 3. Wdrażanie w działającej witrynie
Gdy wszystko będzie gotowe do udostępnienia zmian innym, wdróż Hosting treści i konfigurację na swój kanał na żywo. W zależności od przypadku użycia Firebase oferuje kilka różnych opcji na tym etapie (zobacz opcje poniżej).
Opcja 1. Klonowanie z kanału podglądu na kanał na żywo
Ta opcja daje pewność, że wdrażasz na kanał na żywo dokładnie te same treści i konfigurację, które zostały przetestowane na kanale podglądu. Dowiedz się więcej o klonowaniu wersji.
W dowolnym katalogu uruchom to polecenie:
firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:live
Zastąp każdy obiekt zastępczy tymi wartościami:
SOURCE_SITE_ID i TARGET_SITE_ID: są to identyfikatory witryn, które zawierają kanały.Hosting
- W przypadku domyślnej witryny Hosting użyj identyfikatora projektu Firebase.
- Możesz określić witryny, które znajdują się w tym samym projekcie w Firebase lub nawet w różnych projektach w Firebase.
SOURCE_CHANNEL_ID: jest to identyfikator kanału, który obecnie obsługuje wersję, którą chcesz wdrożyć na kanał na żywo.
- W przypadku kanału na żywo użyj
livejako identyfikatora kanału.
- W przypadku kanału na żywo użyj
Wyświetl zmiany (następny krok).
Opcja 2. Wdrażanie z lokalnego katalogu projektu na kanał na żywo
Ta opcja zapewnia elastyczność w dostosowywaniu konfiguracji specyficznych dla kanału na żywo lub wdrażaniu nawet wtedy, gdy nie używasz kanału podglądu.
W głównym katalogu projektu lokalnego uruchom to polecenie:
firebase deploy --only hosting
Wyświetl zmiany (następny krok).
Krok 4. Wyświetlanie zmian w działającej witrynie
Obie powyższe opcje wdrażają treści i konfigurację Hosting w tych witrynach:
Poddomeny udostępnione przez Firebase w przypadku domyślnej witryny Hosting i wszystkich dodatkowych witryn Hosting:
SITE_ID.web.app(np.PROJECT_ID.web.app)
SITE_ID.firebaseapp.com(np.PROJECT_ID.firebaseapp.com)Wszystkie domeny niestandardowe połączone z witrynami Hosting
Aby ograniczyć wdrożenie do konkretnej witryny Hosting, określ cel wdrożenia w poleceniu interfejsu wiersza poleceń.
Inne działania i informacje dotyczące wdrażania
Dodawanie komentarza do wdrożenia
Opcjonalnie możesz dodać komentarz do wdrożenia. Ten komentarz będzie wyświetlany wraz z innymi informacjami o wdrożeniu na Hosting panelu w Firebase konsoli. Przykład:
firebase deploy --only hosting -m "Deploying the best new feature ever."
Dodawanie zadań skryptowych przed wdrożeniem i po nim
Opcjonalnie możesz połączyć skrypty powłoki z poleceniem firebase deploy, aby wykonywać zadania przed wdrożeniem lub po nim. Na przykład element wywołujący po wdrożeniu może powiadamiać administratorów o wdrożeniach nowych treści witryny. Więcej informacji znajdziesz w dokumentacji interfejsu wiersza poleceń
Firebase.
Buforowanie wdrożonych treści
Gdy wysyłane jest żądanie treści statycznych, Firebase Hosting automatycznie buforuje je w sieci CDN. Jeśli ponownie wdrożysz treści witryny, Firebase automatycznie wyczyści wszystkie buforowane treści statyczne w sieci CDN, aby nowe żądania otrzymywały nowe treści.
Pamiętaj, że możesz skonfigurować buforowanie treści dynamicznych.
Obsługa przez HTTPS
Upewnij się, że wszystkie zasoby zewnętrzne, które nie są hostowane w Firebase Hosting są wczytywane przez SSL (HTTPS), w tym wszystkie skrypty zewnętrzne. Większość przeglądarek nie pozwala użytkownikom na wczytywanie „treści mieszanych” (ruch SSL i ruch bez SSL).
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.
Dalsze kroki
Zintegruj się z GitHubem i iteruj wyświetlane treści, konfigurując działanie GitHub.
Dowiedz się więcej o dodatkowych możliwościach hostingu:
Zapoznaj się z pełną dokumentacją interfejsu wiersza poleceń Firebase.
Przygotuj się do uruchomienia aplikacji:
- Skonfiguruj budżet alertów dla projektu w Google Cloud konsoli.
- Monitoruj panel Użycie i płatności w konsoli Firebase aby uzyskać ogólny obraz wykorzystania projektu w różnych usługach Firebase. Aby uzyskać bardziej szczegółowe informacje o użyciu, możesz też otworzyć panel Hosting Użycie Hostingu.
- Zapoznaj się z listą kontrolną uruchamiania Firebase.