Firebase App Hosting wurde speziell für die moderne Web-App-Entwicklung mit Frameworks entwickelt. Auf dieser Seite finden Sie Informationen zu den Tools und Frameworks, die App Hosting direkt unterstützt, sowie Links zu verwandten Frameworks und Tools.
Web-Frameworks und App Hosting
App Hosting bietet zwei Supportstufen für moderne Web-Frameworks: vorkonfigurierter Support für Build und Bereitstellung sowie Community-Support durch Open-Source-Beiträge, die der Spezifikation für Ausgabebundles entsprechen. In beiden Fällen ermöglicht eine Framework-Adapter-Komponente die Integration eines bestimmten Frameworks in App Hosting.
Frameworks mit vorkonfiguriertem Support für Build und Bereitstellung
Mit vorkonfiguriertem Support für Build und Bereitstellung ermittelt Firebase anhand der Datei package-lock.json oder einer anderen Sperrdatei, welches Framework Sie verwenden, und optimiert die Build- und Bereitstellungsprozesse für Ihre App. Google verpflichtet sich, den Support für diese Frameworks aufrechtzuerhalten. Das Firebase-Supportteam kann Problemberichte und Funktionsanfragen entgegennehmen.
Diese Supportstufe wird für folgende Frameworks angeboten:
- Next.js
- Angular
Weitere Informationen zu bestimmten Versionen und Supportstufen finden Sie in den Supportzeitplänen.
Wenn Sie versuchen, eine Node.js-App bereitzustellen, für die keine Sperrdatei vorhanden ist, App Hosting
kann die App nicht erstellt und ausgeführt werden. Sie können package-lock.json erstellen, indem Sie
npm install im Stammverzeichnis ausführen.
Von der Community unterstützte Frameworks
Neben Next.js und Angular unterstützt App Hosting auch alle Web Frameworks, die eine Build-Ausgabe liefern können, die unserer Spezifikation für Ausgabebundles entspricht. Framework-Autoren können die Spezifikation für Ausgabebundles nutzen, um sicherzustellen, dass ihr Framework von App Hostingunterstützt wird. Das beliebte Nuxt-Framework wird beispielsweise vom Nitro-Team unterstützt, das einen Firebase-Adapter entwickelt hat, um die Bereitstellung von Nuxt-Apps in App Hostingzu ermöglichen.
Wenn Sie möchten, dass weitere Frameworks von App Hosting unterstützt werden, können Sie einen Framework-Adapter erstellen oder sich an die Verantwortlichen des Frameworks wenden, um Build-Ausgaben in das App Hosting Format zu konvertieren. Die Next.js- und Angular-Adapter sind gute Referenzbeispiele für alle, die einen Adapter erstellen.
Informationen zu von der Community unterstützten Frameworks finden Sie unter Firebase Open Source. Probleme und Funktionsanfragen für von der Community unterstützte Frameworks sollten an die Open-Source-Community oder die Framework-Autoren gerichtet werden. In einigen Fällen kann Google helfen, aber die Community ist die erste Anlaufstelle für den Support dieser Adapter.
App Hosting Framework-Adapter
In App Hosting, der Support für vorkonfigurierte und von der Community unterstützte Frameworks wird über Framework-Adapter bereitgestellt. App Hosting Framework Adapter haben zwei Hauptaufgaben:
- Sie parsen Ihren Quellcode und alle Framework-spezifischen Konfigurationsdateien (z. B.
next.config.js) und generieren ein Ausgabebundle, das von der übrigen App Hosting Infrastruktur verarbeitet werden kann. - Sie führen den Build-Befehl Ihrer App aus, um statische Assets zu generieren und eine optimierte Version Ihrer App für die Produktion zu erstellen.
Framework-Adapter erstellen Ihre Node.js-App mit npm run build. Sie funktionieren am besten mit den Standard-Build-Skripts für die einzelnen Frameworks: next build für Next.js und ng build für Angular. App Hosting versucht, Builds mit benutzerdefinierten Build
Befehlen auszuführen, kann den Erfolg aber nicht zuverlässig garantieren. Sie können
Build- und Ausführungsskripts
in apphosting.yaml überschreiben.
Der Quellcode für Next.js- und Angular-Adapter ist in firebase-framework-tools verfügbar.
Laufzeiten für App Hosting
Nachdem Ihre Node.js-App von App Hosting erstellt und bereitgestellt wurde, wird sie in einer Cloud Run Revision ausgeführt. Daher sollte die Laufzeitversion für Ihre App sowohl im unterstützten Bereich von Cloud Run's als auch im Bereich Ihres ausgewählten Web-Frameworks liegen. Für den vorkonfigurierten Support für Angular und Next.js bedeutet das, dass die folgenden Node.js-Versionen unterstützt werden:
- Next.js 13.5.x und höher
- Angular 18.2.x und höher
- Node.js 20 und höher
App Hosting bietet nicht automatisch aktiven Support für neu veröffentlichte Framework-Versionen. Versionen, die neuer als unsere derzeit als „aktiv“ bezeichnete Version sind, befinden sich im Status „Vorschau“, bis sie offiziell als „aktiv“ für App Hosting gekennzeichnet werden.
App Hosting unterstützt den Langzeitsupport (Long-Term Support, LTS) für die neueste Nebenversion von einer Hauptversion ein Jahr lang ab dem Ende des aktiven Supportzeitraums, sofern Sie regelmäßig auf die neuesten Patchversionen innerhalb dieser Nebenversion aktualisieren. Weitere Informationen für Next.js und Angular finden Sie in den folgenden Tabellen.
Supportzeitplan für Next.js
| Version | Status | Einstellung |
|---|---|---|
| 13.5.x | lts | 2026-10-9 |
| 14.2.x | lts | 2026-10-9 |
| 15.0.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 15.1.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 15.2.x | Aktiv | - |
Supportzeitplan für Angular
| Version | Status | Einstellung |
|---|---|---|
| 18.2.x | lts | 2026-10-9 |
| 19.0.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 19.1.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 19.2.x | Aktiv | - |
Automatische Basis-Image-Updates
Automatische Basis-Image-Updates ist eine Funktion, mit der Sicherheitspatches automatisch auf Ihre zugrunde liegende Laufzeitumgebung angewendet werden, ohne dass Sie eine neue App-Bereitstellung auslösen müssen.
App Hosting ist standardmäßig für neue Back-Ends aktiviert. Dabei gelten die folgenden Anforderungen:
- Versionierte Laufzeiten: Wenn Sie ABIU verwenden möchten, müssen Sie eine versionierte Laufzeit angeben
(z. B.
nodejs20,nodejs22,nodejs24). App Hosting unterstützt Node.js-Versionen mit geraden Zahlen, entsprechend dem Support von Cloud Run. - Übereinstimmung mit „package.json“: Die Node-Version, die Sie für App Hosting
auswählen, muss mit der Version übereinstimmen, die im Feld
enginesIhrer Dateipackage.jsonangegeben ist. Wenn es eine Abweichung gibt, tritt ein Build-Fehler in Cloud Build auf. Wenn Sie das Feldenginesändern, müssen Sie die Laufzeit Ihres Back-Ends aktualisieren, bevor Sie es bereitstellen.
ABIU deaktivieren
Wenn Sie ABIU deaktivieren möchten, können Sie dies während der Einrichtung tun oder durch
Auswählen von "Nicht angegeben" für Ihre Laufzeit in der Firebase Konsole. Wenn die standardmäßige versionlose Laufzeit nodejs verwendet wird, ist ABIU automatisch deaktiviert.
Laufzeitversionen verwalten
Sie können die Laufzeitversion und die ABIU-Einstellung Ihres Back-Ends jederzeit auf dem Tab Einstellungen Ihres App Hosting Dashboards ansehen und ändern. Beachten Sie jedoch, dass das Ändern der Laufzeitversion zu Problemen mit Ihrer Anwendung führen kann , wenn die neue Version nicht mit Ihrem Code kompatibel ist.
Laufzeitversionen erreichen irgendwann das Ende ihres Supportzeitraums. Es ist wichtig, Ihre Laufzeiten auf dem neuesten Stand zu halten, um Breaking Changes zu vermeiden:
- Eingestellte Laufzeiten:Wenn Ihre ausgewählte Laufzeit eingestellt wird, funktioniert Ihre Anwendung in der Regel weiterhin. Sie erhalten eine Warnung in der Console und sollten so schnell wie möglich zu einer neueren Version wechseln. Weitere Informationen finden Sie in der Cloud Run Dokumentation zum Laufzeit zyklus.
- Außer Betrieb genommene Laufzeiten:Außer Betrieb genommene Laufzeiten werden nicht mehr unterstützt. Sie können keine neuen Builds oder Back-Ends mit einer außer Betrieb genommenen Version erstellen. Wenn Sie dies versuchen, wird ein Build-Fehler ausgegeben. Vorhandene Bereitstellungen, die mit außer Betrieb genommenen Versionen ausgeführt werden, funktionieren möglicherweise nicht mehr. Cloud Run behält sich das Recht vor, sie zu löschen.
Eine vollständige Liste der unterstützten, eingestellten und außer Betrieb genommenen Node-Versionen finden Sie in der Cloud Run Runtime Support Dokumentation. Weitere technische Details zur Funktionsweise von Basis-Image-Updates finden Sie in der Cloud Run ABIU Dokumentation.
Paketmanager
App Hosting verwendet Cloud Native Buildpacks, um die Installation von Abhängigkeiten auszuführen und die App mit npm, yarn oder pnpm zu erstellen. Andere Paketmanager wie JSR werden nicht unterstützt.
NPM
- NPM ist der Standard-Paketmanager.
- Nicht für die Produktion erforderliche Abhängigkeiten werden nach dem erfolgreichen Build entfernt.
- Sie können den npm-Versionsabschnitt mit dem Feld
engines.npmin Ihrer Dateipackage.jsonangeben.
Garn
- Yarn wird stattdessen verwendet, wenn Sie die Datei
yarn.lockin Ihr Projekt aufnehmen. - Sie können die zu verwendende Yarn-Version im Feld
engines.yarnoderpackageManagerIhrer Dateipackage.jsonangeben. - App Hosting unterstützt den Yarn2-PnP-Modus.
Pnpm
- Pnpm wird stattdessen verwendet, wenn Sie die Datei
pnpm-lock.yamlin Ihr Projekt aufnehmen. - Sie können eine Version von pnpm im Feld
engines.pnpmoderpackageManagerIhrer Dateipackage.jsonangeben. - Ein funktionierendes Beispiel finden Sie in der Beispiel-App sample-node-pnpm. ihre App heruntergeladen haben.
Monorepos für App Hosting
App Hosting unterstützt auf Nx basierende Apps. Eine detaillierte Anleitung finden Sie unter Monorepos mit App Hosting verwenden.
Die folgenden Nx-Versionen werden unterstützt:
| Version | Status | Einstellung |
|---|---|---|
| 19.5.x | Instandhaltungsarbeiten | 2025-10-9 |
| 19.6.x | Instandhaltungsarbeiten | 2025-10-9 |
| 19.7.x | Instandhaltungsarbeiten | 2025-10-9 |
| 19.8.x | lts | 2026-10-9 |
| 20.0.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 20.1.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 20.2.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 20.3.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 20.4.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 20.5.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 20.6.x | Aktiv | Nicht vor dem 9. Oktober 2025 |
| 20.7.x | Aktiv | – |
Wenn Sie Support für andere Arten von Monorepo-Arbeitsbereichen benötigen, teilen Sie uns dies bitte über Firebase UserVoice mit.