Platformy i narzędzia do hostingu aplikacji

Firebase App Hosting została zaprojektowana specjalnie pod kątem obsługi nowoczesnego tworzenia aplikacji internetowych z wykorzystaniem platform. Na tej stronie znajdziesz informacje o narzędziach i platformach, które są App Hosting bezpośrednio obsługiwane, a także linki do materiałów o powiązanych platformach i narzędziach.

Platformy internetowe i App Hosting

App Hosting zapewnia 2 poziomy obsługi nowoczesnych platform internetowych: wstępnie skonfigurowaną obsługę kompilacji i wdrażania oraz obsługę na poziomie społeczności dzięki udziałowi w projektach open source zgodnych ze specyfikacją pakietu wyjściowego. W obu przypadkach integrację konkretnej platformy z App Hostingumożliwia komponent adapter platformy.

Platformy z wstępnie skonfigurowaną obsługą kompilacji i wdrażania

Dzięki wstępnie skonfigurowanej obsłudze kompilacji i wdrażania Firebase rozpoznaje, której platformy używasz, sprawdzając plik package-lock.json lub inny plik blokady, i optymalizuje procesy kompilacji i wdrażania aplikacji. Google zobowiązuje się do utrzymywania obsługi tych platform, a zespół pomocy Firebase może przyjmować zgłoszenia problemów i prośby o dodanie funkcji.

Ten poziom obsługi jest dostępny w przypadku tych platform:

  • Next.js
  • Angular

Szczegółowe informacje o konkretnych wersjach i poziomach obsługi znajdziesz w harmonogramach obsługi.

Jeśli spróbujesz wdrożyć aplikację Node.js, w której brakuje pliku blokady, App Hosting nie będzie w stanie jej skompilować ani uruchomić. Plik package-lock.json możesz utworzyć, uruchamiając polecenie npm install w katalogu głównym.

Platformy obsługiwane przez społeczność

Oprócz Next.js i Angulara App Hosting obsługuje też wszystkie platformy internetowe, które mogą generować dane wyjściowe zgodne ze specyfikacją pakietu wyjściowego . Autorzy platform mogą korzystać ze specyfikacji pakietu wyjściowego, aby zapewnić obsługę swojej platformy przez App Hosting. Na przykład popularna platforma Nuxt jest obsługiwana przez zespół Nitro, który stworzył adapter Firebase umożliwiający wdrażanie aplikacji Nuxt w App Hosting.

Jeśli chcesz, aby dodatkowe platformy były obsługiwane przez App Hosting, możesz utworzyć adapter platformy lub skontaktować się z osobami odpowiedzialnymi za utrzymanie platformy, aby przekonwertować dane wyjściowe kompilacji na format App Hosting. Adaptery Next.js i Angulara to dobre przykłady dla osób tworzących adapter.

Informacje o platformach obsługiwanych przez społeczność znajdziesz w Firebase Open Source. Problemy i prośby o dodanie funkcji w przypadku platform obsługiwanych przez społeczność należy zgłaszać społeczności open source lub autorom platform. W niektórych przypadkach Google może pomóc, ale społeczność jest pierwszym źródłem pomocy w przypadku tych adapterów.

Adaptery platform App Hosting

W App Hosting obsługa platform wstępnie skonfigurowanych i obsługiwanych przez społeczność jest zapewniana przez adaptery platform. App Hosting framework adaptery pełnią 2 kluczowe role:

  • Analizują kod źródłowy i pliki konfiguracyjne specyficzne dla platformy (np. next.config.js) oraz generują pakiet wyjściowy, który może być przetwarzany przez pozostałą część App Hosting infrastruktury.
  • Uruchamiają polecenie kompilacji aplikacji, aby wygenerować zasoby statyczne i utworzyć zoptymalizowaną wersję aplikacji na potrzeby wersji produkcyjnej.

Adaptery platform kompilują aplikację Node.js za pomocą polecenia npm run build. Najlepiej współpracują z domyślnymi skryptami kompilacji dla każdej platformy: next build w przypadku Next.js i ng build w przypadku Angulara. App Hosting będzie próbować kompilacji za pomocą niestandardowych poleceń kompilacji, ale nie może zagwarantować, że się uda. Skrypty kompilacji i uruchamiania możesz zastąpić w apphosting.yaml.

Kod źródłowy adapterów Next.js i Angulara jest dostępny w firebase-framework-tools.

Środowiska wykonawcze w App Hosting

Po skompilowaniu i wdrożeniu przez App Hosting aplikacja Node.js działa w wersji Cloud Run. W związku z tym wersja środowiska wykonawczego aplikacji powinna mieścić się zarówno w Cloud Run's obsługiwanym zakresie i w zakresie wybranej platformy internetowej. W przypadku wstępnie skonfigurowanej obsługi Angulara i Next.js oznacza to, że obsługiwane są te wersje Node.js:

  • Next.js 13.5.x i nowsze
  • Angular 18.2.x i nowsze
  • Node.js 20 i nowsze

App Hosting nie zapewnia automatycznie aktywnej obsługi nowo wydanych wersji platform. Wersje nowsze niż obecnie oznaczona jako 'aktywna' wersja będą uznawane za 'testowe' do momentu, aż zostaną oficjalnie oznaczone jako 'aktywne' dla App Hosting.

App Hosting obsługuje długoterminowe wsparcie (LTS) dla najnowszej wersji podrzędnej wersji głównej przez rok od zakończenia okresu aktywnego wsparcia, pod warunkiem że regularnie aktualizujesz wersję podrzędną do najnowszych wersji poprawek. Szczegółowe informacje o Next.js i Angularze znajdziesz w tabelach poniżej.

Harmonogram obsługi Next.js

Wersja Stan Wycofanie
13.5.x lts 2026-10-9
14.2.x lts 2026-10-9
15.0.x aktywna nie wcześniej niż 2025-10-9
15.1.x aktywna nie wcześniej niż 2025-10-9
15.2.x aktywna -

Harmonogram obsługi Angulara

Wersja Stan Wycofanie
18.2.x lts 2026-10-9
19.0.x aktywna nie wcześniej niż 2025-10-9
19.1.x aktywna nie wcześniej niż 2025-10-9
19.2.x aktywna -

Automatyczne aktualizacje obrazu podstawowego

Automatyczne aktualizacje obrazu podstawowego to funkcja, która automatycznie stosuje poprawki zabezpieczeń w środowisku wykonawczym bez konieczności uruchamiania nowego wdrożenia aplikacji.

App Hosting domyślnie włącza automatyczne aktualizacje obrazu podstawowego w przypadku nowych backendów, ale obowiązują te wymagania:

  • Środowiska wykonawcze z wersjami: aby korzystać z automatycznych aktualizacji obrazu podstawowego, musisz określić środowisko wykonawcze z wersją (np. nodejs20, nodejs22, nodejs24). App Hosting obsługuje wersje Node.js z parzystymi numerami, podobnie jak Cloud Run's support.
  • Dopasowanie pliku package.json: Wersja Node.js wybrana dla App Hosting musi być zgodna z wersją określoną w polu engines w pliku package.json. Jeśli wystąpi niezgodność, podczas kompilacji pojawi się błąd z Cloud Build. Za każdym razem, gdy zmieniasz pole engines, przed wdrożeniem zaktualizuj środowisko wykonawcze backendu.

Wyłączanie automatycznych aktualizacji obrazu podstawowego

Jeśli chcesz zrezygnować z automatycznych aktualizacji obrazu podstawowego, możesz je wyłączyć podczas wdrażania lub przez wybranie „Nie określono” w przypadku środowiska wykonawczego w konsoli Firebase. Gdy używana jest domyślna wersja nodejs bez numeru, automatyczne aktualizacje obrazu podstawowego są automatycznie wyłączane.

Zarządzanie wersjami środowiska wykonawczego

Wersję środowiska wykonawczego backendu i preferencje dotyczące automatycznych aktualizacji obrazu podstawowego możesz w każdej chwili wyświetlić i zmienić na karcie Ustawienia w panelu App Hosting dashboard. Pamiętaj jednak, że zmiana wersji środowiska wykonawczego może spowodować awarię aplikacji, jeśli nowa wersja jest niezgodna z Twoim kodem.

Wersje środowiska wykonawczego w końcu osiągają koniec cyklu życia. Aby uniknąć zmian powodujących niezgodność, ważne jest, aby aktualizować środowiska wykonawcze:

  • Wycofane środowiska wykonawcze: jeśli wybrane środowisko wykonawcze zostanie wycofane, aplikacja będzie nadal działać. W konsoli pojawi się ostrzeżenie i jak najszybciej należy przejść na nowszą wersję. Więcej informacji znajdziesz w dokumentacji Cloud Run dotyczącej cyklu życia środowiska wykonawczego.
  • Wycofane środowiska wykonawcze: wycofane środowiska wykonawcze nie są już obsługiwane. Nie będzie można tworzyć nowych kompilacji ani backendów przy użyciu wycofanej wersji, a próba wykonania tej czynności spowoduje błąd kompilacji. Istniejące wdrożenia działające w wycofanych wersjach mogą przestać działać, a Cloud Run zastrzega sobie prawo do ich usunięcia.

Pełną listę obsługiwanych, wycofanych i wycofanych wersji Node znajdziesz w dokumentacji Cloud Run dotyczącej obsługi środowiska wykonawczego. Więcej informacji technicznych o tym, jak działają aktualizacje obrazu podstawowego, znajdziesz w Cloud Run dokumentacji dotyczącej automatycznych aktualizacji obrazu podstawowego.

Systemy zarządzania pakietami

App Hosting używa Cloud Native Buildpacks do instalowania zależności i kompilowania aplikacji za pomocą npm, yarn lub pnpm. Inne systemy zarządzania pakietami, takie jak JSR, nie są obsługiwane.

NPM

  • NPM to domyślny system zarządzania pakietami.
  • Zależności nieprodukcyjne są usuwane po pomyślnej kompilacji.
  • Wersję npm możesz określić w sekcji engines.npm w pliku package.json.

Włóczka

  • Jeśli w projekcie uwzględnisz plik yarn.lock, zamiast npm będzie używana włóczka.
  • Wersję włóczki, której chcesz użyć, możesz określić w polu engines.yarn lub packageManager w pliku package.json.
  • App Hosting obsługuje tryb Yarn2 PnP.

Pnpm

  • Jeśli w projekcie uwzględnisz plik pnpm-lock.yaml, zamiast npm będzie używany pnpm.
  • Wersję pnpm możesz określić w polu engines.pnpm lub packageManager w pliku package.json.
  • Działający przykład znajdziesz w sample-node-pnpm. aplikacji.

Monorepo dla App Hosting

App Hosting obsługuje aplikacje oparte na Nx. Szczegółowe wskazówki znajdziesz w artykule Używanie monorepo w App Hosting.

Obsługiwane są te wersje Nx:

Wersja Stan Wycofanie
19.5.x roboty konserwacyjne 2025-10-9
19.6.x roboty konserwacyjne 2025-10-9
19.7.x roboty konserwacyjne 2025-10-9
19.8.x lts 2026-10-9
20.0.x aktywna nie wcześniej niż 2025-10-9
20.1.x aktywna nie wcześniej niż 2025-10-9
20.2.x aktywna nie wcześniej niż 2025-10-9
20.3.x aktywna nie wcześniej niż 2025-10-9
20.4.x aktywna nie wcześniej niż 2025-10-9
20.5.x aktywna nie wcześniej niż 2025-10-9
20.6.x aktywna nie wcześniej niż 2025-10-9
20.7.x aktywna

Jeśli potrzebujesz pomocy w przypadku innych typów obszarów roboczych monorepo, daj nam znać w Firebase UserVoice.