Firebase App Hosting è progettato specificamente per supportare lo sviluppo di app web moderne incentrate sui framework. Utilizza questa pagina come riferimento per gli strumenti e i framework supportati direttamente da App Hosting, nonché come punto di partenza per scoprire di più su strumenti e framework correlati.
Framework web e App Hosting
App Hosting offre due livelli di supporto generali per i framework web moderni: supporto preconfigurato per la creazione e il deployment e supporto a livello di community tramite contributi open source conformi alla specifica del bundle di output. In entrambi i casi, un componente adattatore del framework consente l'integrazione di un framework specifico con App Hosting.
Framework con supporto preconfigurato per la creazione e il deployment
Grazie al supporto preconfigurato per la creazione e il deployment, Firebase identifica il framework che utilizzi esaminando il file package-lock.json o un altro file di blocco e ottimizza i processi di creazione e deployment per la tua app. Google si impegna a mantenere il supporto per questi framework e il team di assistenza Firebase può accettare segnalazioni di problemi e richieste di funzionalità.
Questo livello di assistenza è fornito per:
- Next.js
- Angular
Consulta i programmi di assistenza per informazioni dettagliate su versioni specifiche e livelli di assistenza.
Se provi a eseguire il deployment di un'app Node.js a cui manca un file di blocco, App Hosting
non riuscirà a creare ed eseguire l'app. Puoi creare package-lock.json eseguendo
npm install nella directory principale.
Framework supportati dalla community
Oltre a Next.js e Angular, App Hosting supporta anche qualsiasi framework web in grado di fornire un output di build che corrisponda alla nostra specifica del bundle di output. Gli autori dei framework possono sfruttare la specifica del bundle di output per assicurarsi che il loro framework sia supportato da App Hosting. Ad esempio, il popolare framework Nuxt è supportato dal team Nitro, che ha creato un adattatore Firebase per consentire il deployment dell'app Nuxt su App Hosting.
Se vuoi visualizzare framework aggiuntivi supportati da App Hosting, puoi creare un adattatore del framework o contattare i manutentori del framework per convertire gli output di build nel formato App Hosting. Gli adattatori Next.js e Angular sono ottimi esempi di riferimento per chiunque crei un adattatore.
Le informazioni sui framework supportati dalla community sono disponibili su Firebase Open Source. I problemi e le richieste di funzionalità per i framework supportati dalla community devono essere indirizzati alla community open source o agli autori del framework. In alcuni casi Google potrebbe essere in grado di fornire assistenza, ma la community è la prima linea di supporto per questi adattatori.
App Hosting framework adapters
In App Hosting, il supporto per i framework preconfigurati e supportati dalla community viene fornito tramite gli adattatori di framework. Gli adattatori del framework App Hosting hanno due ruoli chiave:
- Analizzano il codice sorgente e tutti i file di configurazione specifici del framework (ad esempio
next.config.js) e generano un bundle di output che può essere elaborato dal resto dell'infrastruttura App Hosting. - Eseguono il comando di build dell'app per generare asset statici e creare una versione ottimizzata dell'app per la produzione.
Gli adattatori del framework creano la tua app Node.js con npm run build, funzionando al meglio
con gli script di build predefiniti per ogni framework: next build per Next.js e
ng build per Angular. App Hosting tenterà di eseguire build con comandi di build personalizzati, ma non può garantire in modo affidabile il successo. Puoi
eseguire l'override degli script di build ed esecuzione
in apphosting.yaml.
Il codice sorgente degli adattatori Next.js e Angular è disponibile in firebase-framework-tools.
Runtime per App Hosting
Dopo la creazione e l'implementazione da parte di App Hosting, la tua app Node.js viene eseguita in una revisione Cloud Run. Di conseguenza, la versione del runtime per la tua app deve rientrare sia nell'intervallo supportato di Cloud Run sia nell'intervallo del framework web scelto. Per il supporto preconfigurato di Angular e Next.js, sono supportate le seguenti versioni di Node.js:
- Next.js 13.5.x e versioni successive
- Angular 18.2.x e versioni successive
- Node.js 20 e versioni successive
App Hosting non fornisce automaticamente supporto attivo per le versioni del framework rilasciate di recente. Le versioni più recenti di quella attualmente designata come "attiva" verranno considerate in stato "anteprima" finché non verranno ufficialmente contrassegnate come "attive" per App Hosting.
App Hosting supporta l'assistenza a lungo termine (LTS) per l'ultima versione secondaria di una release principale per un anno dal periodo di assistenza attiva, a condizione che esegui costantemente l'aggiornamento alle patch più recenti all'interno di quella versione secondaria. Per i dettagli relativi a Next.js e Angular, consulta le tabelle riportate di seguito.
Programma di assistenza di Next.js
| Versione | Stato | Ritiro |
|---|---|---|
| 13.5.x | lts | 2026-10-9 |
| 14.2.x | lts | 2026-10-9 |
| 15.0.x | attivo | non prima del 09/10/2025 |
| 15.1.x | attivo | non prima del 09/10/2025 |
| 15.2.x | attivo | - |
Programma di assistenza di Angular
| Versione | Stato | Ritiro |
|---|---|---|
| 18.2.x | lts | 2026-10-9 |
| 19.0.x | attivo | non prima del 09/10/2025 |
| 19.1.x | attivo | non prima del 09/10/2025 |
| 19.2.x | attivo | - |
Aggiornamenti automatici delle immagini di base (ABIU)
Gli aggiornamenti automatici delle immagini di base (ABIU) sono una funzionalità che applica automaticamente patch di sicurezza all'ambiente di runtime sottostante senza richiedere di attivare una nuova implementazione dell'app.
App Hosting per impostazione predefinita abilita ABIU per i nuovi backend, con questi requisiti specifici:
- Runtime con controllo delle versioni:per utilizzare ABIU, devi specificare un runtime con controllo delle versioni
(ad esempio
nodejs20,nodejs22,nodejs24). App Hosting supporta le versioni di Node.js con numeri pari, rispecchiando il supporto di Cloud Run. - Corrispondenza di package.json:la versione di Node selezionata per App Hosting
deve essere compatibile con la versione specificata nel campo
enginesdel filepackage.json. Se c'è una mancata corrispondenza, si verifica un errore in fase di compilazione da Cloud Build. Ogni volta che modifichi il campoengines, assicurati di aggiornare il runtime del backend prima del deployment.
Disattivazione di ABIU
Se vuoi disattivare ABIU, puoi farlo durante l'onboarding o selezionando "Non specificato" per il runtime nella console Firebase. Quando viene utilizzato un valore predefinito nodejs senza versione, ABIU viene disattivato automaticamente.
Gestione delle versioni di runtime
Puoi visualizzare e modificare la versione del runtime e la preferenza ABIU del backend in qualsiasi momento nella scheda Impostazioni della dashboard App Hosting. Tuttavia, tieni presente che la modifica della versione del runtime potrebbe interrompere il funzionamento dell'applicazione se la nuova versione non è compatibile con il codice.
Le versioni del runtime alla fine raggiungono la fine del ciclo di vita del supporto. È importante mantenere aggiornati i runtime per evitare modifiche che causano interruzioni:
- Runtime ritirati:se il runtime scelto viene ritirato, l'applicazione continuerà a funzionare. Riceverai un avviso nella console e dovresti passare a una versione più recente il prima possibile. Per saperne di più, consulta la documentazione relativa al ciclo di vita dell'ambiente di runtime di Cloud Run.
- Runtime ritirati: i runtime ritirati non sono supportati. Non ti sarà consentito creare nuove build o nuovi backend utilizzando una versione ritirata e, se tenti di farlo, si verificherà un errore di build. Le implementazioni esistenti in esecuzione su versioni ritirate potrebbero smettere di funzionare e Cloud Run si riserva il diritto di eliminarle.
Per un elenco completo delle versioni di Node supportate, ritirate e ritirate definitivamente, consulta la documentazione sul supporto del runtime. Per ulteriori dettagli tecnici sul funzionamento degli aggiornamenti delle immagini di base, consulta la documentazione su Cloud RunABIU.Cloud Run
Gestori di pacchetti
App Hosting utilizza Cloud Native Buildpacks per eseguire l'installazione delle dipendenze e crea l'app utilizzando npm, yarn o pnpm. Altri gestori di pacchetti come JSR non sono supportati.
NPM
- NPM è il gestore di pacchetti predefinito.
- Le dipendenze non di produzione vengono eliminate dopo la creazione della build.
- Puoi specificare la sezione della versione di npm utilizzando il campo
engines.npmnel filepackage.json.
Filato
- Yarn viene utilizzato invece quando includi il file
yarn.locknel progetto. - Puoi specificare la versione di Yarn da utilizzare nel campo
engines.yarnopackageManagerdel filepackage.json. - App Hosting supporta la modalità PnP di Yarn2.
Pnpm
- Pnpm viene utilizzato invece quando includi il file
pnpm-lock.yamlnel tuo progetto. - Puoi specificare una versione di pnpm nel campo
engines.pnpmopackageManagerdel filepackage.json. - Per un esempio funzionante, vedi sample-node-pnpm. Flood-It!
Monorepo per App Hosting
App Hosting supporta le app basate su Nx. Per indicazioni dettagliate, consulta Utilizzare i monorepo con App Hosting.
Sono supportate le seguenti versioni di Nx:
| Versione | Stato | Ritiro |
|---|---|---|
| 19.5.x | manutenzione | 2025-10-9 |
| 19.6.x | manutenzione | 2025-10-9 |
| 19.7.x | manutenzione | 2025-10-9 |
| 19.8.x | lts | 2026-10-9 |
| 20.0.x | attivo | non prima del 09/10/2025 |
| 20.1.x | attivo | non prima del 09/10/2025 |
| 20.2.x | attivo | non prima del 09/10/2025 |
| 20.3.x | attivo | non prima del 09/10/2025 |
| 20.4.x | attivo | non prima del 09/10/2025 |
| 20.5.x | attivo | non prima del 09/10/2025 |
| 20.6.x | attivo | non prima del 09/10/2025 |
| 20.7.x | attivo | — |
Se hai bisogno di assistenza per altri tipi di workspace monorepo, comunicacelo su Firebase UserVoice.