Framework Francoforte, Germania

Fai il deploy di Astro su Nodion

Nodion riconosce Astro da astro nel package.json ed esegue la build con il suo buildpack Node.js. Di default serve dist/ come sito statico; quando la tua configurazione imposta output: 'server', avvia invece il server Node.js con node ./dist/server/entry.mjs. In entrambi i casi il tuo sito gira a Francoforte.

Fai il deploy su Nodion ›

da 1 EUR / mese

Fino a 15 € di credito di benvenuto alla registrazione

Rilevato da
astro nel package.json
Avvio
file statici da dist/, oppure node ./dist/server/entry.mjs
Node.js
22, 24 (predefinita), 26
Regione
EU Central (Francoforte)

Deploy di Astro passo dopo passo

  1. Fai il commit del lockfile e avvia la build Fai il commit del lockfile; senza lockfile la build fallisce. Nodion esegue il tuo script build e serve dist/ con un server web statico. Non gira nessun server Node.js, quindi un sito Astro statico non ha bisogno di adapter. package.json
    "scripts": {
      "dev": "astro dev",
      "build": "astro build"
    }
  2. Segna le variabili di build Una build statica legge tutte le sue variabili durante astro build, quindi spunta Build per ciascuna nella scheda Environment. In modalità server vale lo stesso per le variabili PUBLIC_*, che finiscono nel codice eseguito dal browser.
  3. Per l'SSR: aggiungi l'adapter Node Esegui npx astro add node oppure installa tu @astrojs/node, usalo in modalità standalone e imposta output: 'server' (o 'hybrid' su Astro 4). Nodion avvia un server solo quando astro.config.mjs, .js o .ts contiene questa impostazione; non legge astro.config.mts. Tieni astro e @astrojs/node in dependencies, perché le dipendenze di sviluppo vengono rimosse dopo la build. astro.config.mjs
    import { defineConfig } from "astro/config";
    import node from "@astrojs/node";
    
    export default defineConfig({
      output: "server",
      adapter: node({ mode: "standalone" }),
    });
  4. Fai ascoltare il server su tutte le interfacce Il server standalone legge PORT, impostata da Nodion, e HOST. Imposta HOST su 0.0.0.0 nella scheda Environment, così il server accetta connessioni dall'esterno dell'istanza, health check compreso. Nodion avvia node ./dist/server/entry.mjs a meno che il package.json non abbia uno script di avvio; se il tuo esegue astro dev, rimuovilo.
  5. Crea l'app e fai push Nella dashboard crea un'applicazione dal tuo repository GitHub, GitLab, Bitbucket o Gitea nella regione EU Central. Ogni push crea una nuova release, e il traffico passa alla nuova release appena / risponde con uno stato 2xx o 3xx.

Da sapere

  • Le pagine on demand richiedono output: 'server'Nodion decide in base all'impostazione output, non all'adapter. Un progetto che mantiene l'output statico predefinito e renderizza singole pagine on demand con export const prerender = false non viene eseguito come server. Imposta invece output: 'server' e segna le pagine che devono restare statiche con export const prerender = true.
  • La tua pagina 404Per i percorsi che non esistono, il server statico risponde con il tuo index.html. Per mostrare invece la pagina che Astro genera da src/pages/404.astro, aggiungi un static.toml con fallback = "404.html". Fallo solo con l'output statico: con un static.toml Nodion serve sempre il progetto come file statici.

Cosa gestisce Nodion per te

  • Deploy senza downtime Fai push sul tuo branch e Nodion crea una nuova release. Il traffico passa alle nuove istanze solo quando superano l'health check; una release fallita lascia attiva quella in esecuzione. Le app con un volume locale invece si riavviano, perché il disco appartiene a una sola istanza.
  • Database accanto all'app PostgreSQL, pgvector, MySQL, Valkey e ClickHouse gestiti, nella stessa regione. I database collegati arrivano come DATABASE_URL, REDIS_URL o CLICKHOUSE_URL.
  • Anteprime per ogni pull request Attiva le anteprime: ogni pull request del tuo repository riceve un'app dedicata, con un proprio URL e database nuovi e vuoti, creata automaticamente o manualmente. Le pull request dai fork e quelle dei bot vengono ignorate.
  • Worker, cron job e scalabilità Esegui i worker come processi aggiuntivi della stessa app, pianifica i job nella scheda Cron e scala ogni processo fino a 16 istanze.
  • Fase di release Con i buildpack, la riga release: del Procfile viene eseguita a ogni nuova build. Le app con Dockerfile, così come i redeploy e i rollback a un'immagine precedente, usano un comando di release impostato sull'app stessa, che ha anche la precedenza sulla riga del Procfile. Nei siti statici, la fase di release gira in un'immagine che contiene solo i file generati dalla build.
  • Log e metriche Nella dashboard trovi log di build, release e runtime, oltre alle metriche di CPU, memoria, disco e rete per ogni istanza.
  • Domini e HTTPS Un hostname predefinito con HTTPS dal primo deploy; i tuoi domini ricevono i certificati in automatico.

Per approfondire

Astro su Nodion: domande e risposte

Nodion esegue Astro come sito statico o come server?

Di default come sito statico, servito da dist/. Con output: 'server' in astro.config.mjs, .js o .ts, Nodion esegue il server Node.js generato da @astrojs/node.

Quale adapter mi serve per l'SSR di Astro su Nodion?

@astrojs/node con mode: 'standalone'. Genera un server che Nodion avvia con node ./dist/server/entry.mjs; imposta HOST su 0.0.0.0 perché accetti connessioni dall'esterno.

Perché la mia app Astro SSR viene servita come file statici?

Nodion cerca solo output: 'server' (o 'hybrid') scritto in astro.config.mjs, astro.config.js o astro.config.ts. Una configurazione in astro.config.mts, un valore di output letto da una variabile o un static.toml nel progetto la mantengono statica.

Dove gira la mia app Astro?

Nella regione EU Central a Francoforte, in Germania. La build, il registry, l'app e i suoi database, volumi, bucket, log e metriche restano in quella regione. L'API e il control plane di Nodion sono ospitati in Germania. Nodion GmbH ha sede a Stoccarda.

Posso usare Astro in modo conforme al GDPR?

Nodion offre le basi per farlo: Nodion GmbH ha sede a Stoccarda, in Germania; nella regione di Francoforte l'app, i suoi database e i volumi girano in Germania; puoi sottoscrivere il DPA (accordo sul trattamento dei dati, art. 28 GDPR) in formato elettronico nella dashboard. La conformità del tuo utilizzo dipende anche da come configuri e usi l'app.

Quanto costa l'hosting di Astro su Nodion?

Un'istanza dell'app costa da 1 EUR al mese. La configurazione mostrata nel riquadro costa 2 EUR al mese: App 2 EUR. I prezzi sono IVA esclusa e la fatturazione è al secondo. Puoi scegliere dimensioni più grandi o più istanze quando ti servono.

Posso usare un mio dominio per la mia app Astro?

Sì. Ogni app riceve un hostname predefinito con HTTPS. Aggiungi il tuo dominio nella scheda Domains dell'app; il certificato TLS viene emesso e rinnovato automaticamente.

Dai al tuo agente un cloud tutto suo.

Fino a 15 € di credito quando ti registri.

Continua con GitHub

oppure con l'email

Resta aggiornato.

Novità sul prodotto, niente spam. Puoi annullare l'iscrizione quando vuoi.