Platformy i narzędzia do hostingu aplikacji

Firebase App Hosting została zaprojektowana specjalnie z myślą o wspieraniu tworzenia nowoczesnych aplikacji internetowych opartych na frameworkach. Na tej stronie znajdziesz informacje o narzędziach i platformach, które App Hosting bezpośrednio obsługuje, a także 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 za pomocą wkładu w projekty open source zgodne ze specyfikacją pakietu wyjściowego. W obu przypadkach komponent adaptera platformy umożliwia integrację konkretnej platformy z App Hosting.

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

Dzięki wstępnie skonfigurowanej obsłudze kompilacji i wdrażania Firebase rozpoznaje używane przez Ciebie frameworki, sprawdzając plik package-lock.json lub inne pliki blokady, i optymalizuje procesy kompilacji i wdrażania aplikacji. Google dokłada wszelkich starań, aby utrzymać obsługę tych frameworków, a zespół pomocy Firebase może przyjmować zgłoszenia problemów i prośby o dodanie funkcji.

Ten poziom pomocy jest dostępny w przypadku:

  • Next.js
  • Angular

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

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

Platformy wspierane 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 z naszą specyfikacją pakietu wyjściowego. Autorzy platform mogą korzystać ze specyfikacji pakietu wyjściowego, aby mieć pewność, że ich platforma jest obsługiwana przez App Hosting. Na przykład popularny framework Nuxt jest obsługiwany przez zespół Nitro, który stworzył adapter Firebase, aby umożliwić wdrażanie aplikacji Nuxt w App Hosting.

Jeśli chcesz, aby App Hosting obsługiwało dodatkowe platformy, możesz utworzyć adapter platformy lub skontaktować się z osobami odpowiedzialnymi za utrzymanie platformy, aby przekonwertować dane wyjściowe kompilacji do formatu App Hosting. Adaptery Next.js i Angular to dobre przykłady referencyjne dla osób tworzących adapter.

Informacje o platformach obsługiwanych przez społeczność znajdziesz na stronie Firebase Open Source. Problemy i prośby o dodanie funkcji w przypadku platform obsługiwanych przez społeczność należy kierować do społeczności open source lub autorów platform. W niektórych przypadkach Google może pomóc, ale społeczność jest pierwszą linią wsparcia w przypadku tych adapterów.

App Hosting adaptery platformy,

App Hosting obsługiwane są zarówno wstępnie skonfigurowane, jak i wspierane przez społeczność platformy. Odbywa się to za pomocą adapterów platform. App Hosting ramowe adaptery mają 2 kluczowe role:

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

Adaptery platformy tworzą aplikację Node.js za pomocą npm run build i najlepiej współpracują z domyślnymi skryptami kompilacji dla każdej platformy: next build w przypadku Next.js i ng build w przypadku Angular. App Hosting będzie próbować tworzyć kompilacje za pomocą niestandardowych poleceń kompilacji, ale nie może zagwarantować sukcesu. Możesz zastąpić skrypty kompilacji i uruchamianiaapphosting.yaml.

Źródło adapterów Next.js i Angular jest dostępne w firebase-framework-tools.

Środowiska wykonawcze dla App Hosting

Po utworzeniu i wdrożeniu przez App Hosting aplikacja Node.js działa w wersji Cloud Run. Wersja środowiska wykonawczego aplikacji powinna mieścić się w Cloud Runzakresie obsługiwanym przez i w zakresie wybranego frameworka internetowego. W przypadku wstępnie skonfigurowanej obsługi Angulara i Next.js oznacza to, że obsługiwane są te wersje Node.js:

  • Next.js w wersji 13.5.x lub nowszej
  • Angular w wersji 18.2.x lub nowszej
  • Node.js 20 lub nowszy

App Hosting nie zapewnia automatycznie aktywnej pomocy w przypadku nowo wydanych wersji platformy. Wersje nowsze niż obecnie oznaczona jako „aktywna” będą miały stan „wersja testowa”, dopóki nie zostaną oficjalnie oznaczone jako „aktywne” w przypadku App Hosting.

App Hosting zapewnia wsparcie długoterminowe (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.

pomocą na poziomie najlepszych starań.

Harmonogram pomocy dotyczącej 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ż 9 października 2025 r.
15.1.x aktywna nie wcześniej niż 9 października 2025 r.
15.2.x aktywna -

Harmonogram pomocy dotyczącej Angulara

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

Automatyczne aktualizacje obrazu podstawowego

Automatyczne aktualizacje obrazu podstawowego (ABIU) to funkcja, która automatycznie stosuje poprawki zabezpieczeń w bazowym środowisku wykonawczym bez konieczności uruchamiania nowej wersji aplikacji.

App Hosting domyślnie włącza ABIU w przypadku nowych backendów, przy czym obowiązują te konkretne wymagania:

  • Środowiska wykonawcze z określoną wersją: aby używać ABIU, musisz określić środowisko wykonawcze z określoną wersją (np. nodejs20, nodejs22, nodejs24). App Hosting obsługuje parzyste wersje Node.js, podobnie jak Cloud Run.
  • Dopasowanie pliku package.json: wybrana wersja Node w przypadku App Hosting musi być zgodna z wersją określoną w polu engines pliku package.json. Jeśli wystąpi niezgodność, zobaczysz błąd czasu kompilacji z Cloud Build. Za każdym razem, gdy zmieniasz pole engines, przed wdrożeniem zaktualizuj środowisko wykonawcze backendu.

Wyłączanie ABIU

Jeśli chcesz zrezygnować z ABIU, możesz wyłączyć tę funkcję podczas wprowadzania lub wybierając „Nie określono” w przypadku czasu działania w Firebase konsoli. Gdy używana jest domyślna wersja bez numeru nodejs, ABIU jest automatycznie wyłączana.

Zarządzanie wersjami środowiska wykonawczego

Wersję środowiska wykonawczego i preferencje dotyczące ABIU backendu możesz w dowolnym momencie wyświetlić i zmienić na karcie Ustawienia w panelu App Hosting. Pamiętaj jednak, że zmiana wersji środowiska wykonawczego może spowodować nieprawidłowe działanie 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 błędy, musisz 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. Jak najszybciej przejdź na nowszą wersję. Więcej informacji znajdziesz w Cloud Run dokumentacji cyklu życia środowiska wykonawczego.
  • Wycofane środowiska wykonawcze: wycofane środowiska wykonawcze nie są w ogóle 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 wersjach wycofanych z użytku mogą przestać działać, a Cloud Run zastrzega sobie prawo do ich usunięcia.

Pełną listę obsługiwanych, wycofanych i zlikwidowanych wersji Node znajdziesz w Cloud Rundokumentacji dotyczącej obsługi środowiska wykonawczego. Więcej szczegółów technicznych na temat działania aktualizacji obrazu podstawowego znajdziesz w Cloud Rundokumentacji ABIU.

Menedżerowie pakietów

App Hosting używa Cloud Native Buildpacks do wykonywania instalacji zależności i kompilowania aplikacji za pomocą npm, yarn lub pnpm. Inne menedżery pakietów, takie jak JSR, nie są obsługiwane.

NPM

  • NPM to domyślny menedżer pakietów.
  • Zależności inne niż produkcyjne są usuwane po pomyślnym zakończeniu kompilacji.
  • Sekcję wersji npm możesz określić za pomocą pola engines.npm w pliku package.json.

Włóczka

  • Jeśli w projekcie uwzględnisz plik yarn.lock, zamiast niego będzie używany Yarn.
  • Wersję przędzy, 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 niego 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. .

Monorepozytoria dla App Hosting

App Hosting obsługuje aplikacje oparte na Nx. Szczegółowe wskazówki znajdziesz w artykule Korzystanie z 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ż 9 października 2025 r.
20.1.x aktywna nie wcześniej niż 9 października 2025 r.
20.2.x aktywna nie wcześniej niż 9 października 2025 r.
20.3.x aktywna nie wcześniej niż 9 października 2025 r.
20.4.x aktywna nie wcześniej niż 9 października 2025 r.
20.5.x aktywna nie wcześniej niż 9 października 2025 r.
20.6.x aktywna nie wcześniej niż 9 października 2025 r.
20.7.x aktywna

Jeśli potrzebujesz obsługi innych typów obszarów roboczych monorepo, daj nam znać na stronie Firebase UserVoice.