Framework Frankfurt, Duitsland

Deploy Astro op Nodion

Nodion herkent Astro aan astro in package.json en draait je build met het Node.js-buildpack. Standaard serveert Nodion dist/ als statische site; zet je config output: 'server', dan start Nodion in plaats daarvan de Node.js-server met node ./dist/server/entry.mjs. Hoe dan ook draait je site in Frankfurt.

Op Nodion deployen ›

vanaf 1 EUR / maand

Tot € 15 welkomsttegoed bij registratie

Herkend aan
astro in package.json
Start
statische bestanden uit dist/, of node ./dist/server/entry.mjs
Node.js
22, 24 (standaard), 26
Regio
EU Central (Frankfurt)

Astro stap voor stap deployen

  1. Commit de lockfile en voer de build uit Commit je lockfile; zonder lockfile mislukt de build. Nodion voert je build-script uit en serveert dist/ met een statische webserver. Er draait geen Node.js-server, dus een statische Astro-site heeft geen adapter nodig. package.json
    "scripts": {
      "dev": "astro dev",
      "build": "astro build"
    }
  2. Markeer buildvariabelen Een statische build leest al zijn variabelen tijdens astro build, dus vink er Build voor aan op het tabblad Environment. In servermodus geldt hetzelfde voor PUBLIC_*-variabelen, die in de browsercode terechtkomen.
  3. Voor SSR: voeg de Node-adapter toe Voer npx astro add node uit of installeer @astrojs/node zelf, gebruik het in standalone-modus en stel output: 'server' in (of 'hybrid' onder Astro 4). Nodion start alleen een server als astro.config.mjs, .js of .ts die instelling bevat; astro.config.mts leest Nodion niet. Zet astro en @astrojs/node in dependencies, want dev-dependencies worden na de build verwijderd. astro.config.mjs
    import { defineConfig } from "astro/config";
    import node from "@astrojs/node";
    
    export default defineConfig({
      output: "server",
      adapter: node({ mode: "standalone" }),
    });
  4. Laat de server op alle interfaces luisteren De standalone-server leest PORT, dat Nodion instelt, en HOST. Zet HOST op het tabblad Environment op 0.0.0.0, zodat de server verbindingen van buiten de instantie accepteert, ook de health check. Nodion start node ./dist/server/entry.mjs, tenzij package.json een startscript heeft; draait dat van jou astro dev, verwijder het dan.
  5. Maak de app aan en push Maak in het dashboard een applicatie aan vanuit je GitHub-, GitLab-, Bitbucket- of Gitea-repository in de regio EU Central. Elke push bouwt een nieuwe release, en het verkeer gaat ernaar over zodra / antwoordt met een 2xx- of 3xx-status.

Goed om te weten

  • Pagina's on demand hebben output: 'server' nodigNodion beslist op basis van de instelling output, niet op basis van de adapter. Een project dat de standaard statische output houdt en losse pagina's on demand rendert met export const prerender = false, draait niet als server. Stel in plaats daarvan output: 'server' in en markeer de pagina's die statisch moeten blijven met export const prerender = true.
  • Je 404-paginaVoor paden die niet bestaan, antwoordt de statische server met je index.html. Wil je in plaats daarvan de pagina tonen die Astro uit src/pages/404.astro bouwt, voeg dan een static.toml toe met fallback = "404.html". Doe dit alleen bij statische output: met een static.toml serveert Nodion het project altijd als statische bestanden.

Wat Nodion voor je regelt

  • Deploys zonder downtime Push naar je branch en Nodion bouwt een nieuwe release. Het verkeer schakelt over zodra de nieuwe instanties hun health check doorstaan; een mislukte release laat de draaiende versie staan. Apps met een lokaal volume herstarten in plaats daarvan, omdat de schijf bij één instantie hoort.
  • Databases naast de app Managed PostgreSQL, pgvector, MySQL, Valkey en ClickHouse in dezelfde regio. Gekoppelde databases komen binnen als DATABASE_URL, REDIS_URL of CLICKHOUSE_URL.
  • Previews per pull request Zet previews aan en pull requests uit je repository krijgen een eigen app met een eigen URL en nieuwe, lege databases, automatisch of handmatig aangemaakt. Forks en pull requests van bots worden overgeslagen.
  • Workers, cronjobs en schalen Draai workers als extra processen van dezelfde app, plan jobs op het tabblad Cron en schaal elk proces naar maximaal 16 instanties.
  • Releasestap Met buildpacks draait een release:-regel in het Procfile bij elke nieuwe build. Dockerfile-apps, en redeploys of rollbacks naar een eerdere image, gebruiken een releasecommando dat op de app zelf is ingesteld en dat ook voorrang heeft op de Procfile-regel. Bij statische sites draait een releasestap in een image die alleen de gebouwde bestanden bevat.
  • Logs en metrics Build-, release- en runtimelogs plus metrics voor CPU, geheugen, schijf en netwerk van elke instantie in het dashboard.
  • Domeinen en HTTPS Een standaardhostnaam met HTTPS vanaf de eerste deploy; je eigen domeinen krijgen automatisch certificaten.

Verder lezen

Astro op Nodion: vragen en antwoorden

Draait Nodion Astro als statische site of als server?

Standaard als statische site, geserveerd uit dist/. Met output: 'server' in astro.config.mjs, .js of .ts draait Nodion de Node.js-server die @astrojs/node bouwt.

Welke adapter heb ik nodig voor Astro-SSR op Nodion?

@astrojs/node met mode: 'standalone'. Die bouwt een server die Nodion start met node ./dist/server/entry.mjs; zet HOST op 0.0.0.0, zodat de server verbindingen van buitenaf accepteert.

Waarom wordt mijn Astro-SSR-app als statische bestanden geserveerd?

Nodion zoekt alleen naar output: 'server' (of 'hybrid') letterlijk in astro.config.mjs, astro.config.js of astro.config.ts. Een config in astro.config.mts, een outputwaarde uit een variabele of een static.toml in het project houdt de app statisch.

Waar draait mijn Astro-app?

In de regio EU Central in Frankfurt, Duitsland. Build, registry, de app en de bijbehorende databases, volumes, buckets, logs en metrics blijven in die regio, en de API en het control plane van Nodion worden in Duitsland gehost. Nodion GmbH is gevestigd in Stuttgart.

Kan ik Astro gebruiken volgens de AVG (GDPR)?

Nodion biedt hiervoor de basis: Nodion GmbH is gevestigd in Stuttgart (Duitsland). Kies je de regio Frankfurt, dan draaien de app, de databases en de volumes in Duitsland. De verwerkersovereenkomst (DPA, art. 28 AVG) sluit je elektronisch af in het dashboard. Of je configuratie aan de AVG voldoet, hangt ook af van hoe je de app instelt en gebruikt.

Wat kost het om Astro op Nodion te draaien?

Een appinstantie kost vanaf 1 EUR per maand. De configuratie in het kostenoverzicht kost 2 EUR per maand: App 2 EUR. Prijzen zijn excl. btw en worden per seconde gefactureerd, en je kiest grotere formaten of meer instanties wanneer je ze nodig hebt.

Kan ik een eigen domein gebruiken voor mijn Astro-app?

Ja. Elke app krijgt een standaardhostnaam met HTTPS. Voeg je eigen domein toe op het tabblad Domains van de app; het TLS-certificaat wordt automatisch uitgegeven en vernieuwd.

Geef je agent een cloud.

Ontvang tot € 15 welkomsttegoed bij je registratie.

Doorgaan met GitHub

of met e-mail

Blijf op de hoogte.

Productnieuws, geen spam. Je kunt je altijd weer afmelden.