Firebase App Hosting została zaprojektowana specjalnie z myślą o obsłudze 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 dzięki udziałowi w projektach open source zgodnych 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, którego frameworka używasz, sprawdzając plik package-lock.json
lub inny plik 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ż dowolną platformę internetową, która może 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 na 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,
W App Hosting obsługa wstępnie skonfigurowanych i obsługiwanych przez społeczność platform jest zapewniana przez adaptery platform. App Hosting adaptery platformy mają 2 kluczowe role:
- Analizują one kod źródłowy i wszystkie 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ą polecenia npm run build
, które najlepiej sprawdza się w przypadku domyślnych skryptów kompilacji dla każdej platformy: next build
w przypadku Next.js i ng build
w przypadku Angulara. 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 uruchamiania w apphosting.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 zakresie obsługiwanym przez Cloud Run 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 w wersji 18 i nowszych
App Hosting nie zapewnia automatycznie aktywnego wsparcia w przypadku nowo wydanych wersji platformy. Wersje nowsze niż obecnie oznaczona jako „aktywna” będą miały stan „wersja zapoznawcza”, 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 będziesz regularnie aktualizować wersję podrzędną do najnowszych wersji poprawek. Szczegółowe informacje o Next.js i Angularze znajdziesz w tabelach poniżej.
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ż 2025-10-9 |
15.1.x | aktywna | nie wcześniej niż 2025-10-9 |
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ż 2025-10-9 |
19.1.x | aktywna | nie wcześniej niż 2025-10-9 |
19.2.x | aktywna | - |
Menedżerowie pakietów
App Hosting używa Cloud Native Buildpacks do wykonania instalacji zależności i kompiluje aplikację 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 nieprodukcyjne są usuwane po pomyślnym zakończeniu kompilacji.
- Sekcję wersji npm możesz określić za pomocą pola
engines.npm
w plikupackage.json
.
Włóczka
- Jeśli w projekcie uwzględnisz plik
yarn.lock
, zamiast npm zostanie użyty Yarn. - Wersję przędzy, której chcesz użyć, możesz określić w polu
engines.yarn
lubpackageManager
w plikupackage.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
lubpackageManager
w plikupackage.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 wApp 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 obsługi innych typów obszarów roboczych monorepo, daj nam znać na stronie Firebase UserVoice.