Build & Optimierung ·
Vercel ·
Netlify ·
Cloudflare Pages ·
Docker ·
Umgebungsvariablen
Astro-Seiten können als statische Dateien, serverseitig gerendert (SSR) oder hybrid ausgeliefert werden. Diese Cheatsheet fasst die wichtigsten Deployment-Methoden und Plattformen zusammen.
Astro Build erzeugt das produktionsreife Bundle im dist/-Verzeichnis. Der Build-Prozess optimiert automatisch Assets, minimiert CSS/JS und generiert statische Seiten.
| Option | Beschreibung |
|---|---|
| outDir: './dist' | Ausgabeverzeichnis (Standard) |
| publicDir: './public' | Verzeichnis für statische Assets |
| build.assetsPrefix | CDN-Präfix für Assets |
| build.format: 'file' | Datei-basierte Ausgabe (Standard) |
| build.format: 'directory' | Verzeichnis-basierte Ausgabe |
| build.inlineStylesheets: 'auto' | Stylesheets automatisch inlinen |
| compressHTML: true | HTML komprimieren (Standard) |
npm run preview, um die gebaute Seite lokal zu testen – das ist besonders vor dem Deployment wichtig.
Vercel ist die empfohlene Plattform für Astro-Deployments. Die offizielle Integration unterstützt statische Seiten und serverseitiges Rendering (SSR) mit Serverless Functions.
output: 'server' Modus und den vercel()-Adapter konfigurieren.
Netlify ist eine beliebte Plattform für statische Sites und unterstützt Astro nativ. Die Integration bietet sowohl statische als auch serverseitige Rendering-Optionen.
astro build automatisch. Für SSR benötigen Sie den netlify-Adapter und output: 'server'.
Cloudflare Pages bietet ein schnelles und kostengünstiges Hosting für Astro-Projekte mit globalem CDN und Unterstützung für Edge Functions.
output: 'server'-Modus. Statische Seiten funktionieren ohne Adapter, direkt mit astro build.
Docker ermöglicht die Containerisierung von Astro-Anwendungen für konsistente Deployments in jeder Umgebung – ideal für eigene Server oder Kubernetes.
Umgebungsvariablen in Astro werden über import.meta.env bereitgestellt. Variablen mit PUBLIC_-Präfix sind auch im Client verfügbar.
| Datei | Verwendung |
|---|---|
| .env | Lokale Entwicklung (wird nicht eingecheckt) |
| .env.production | Produktionsumgebung |
| .env.staging | Staging-Umgebung |
| PUBLIC_* | Im Client verfügbare Variablen |
| SERVER_* | Nur serverseitig (nicht im Client) |
PUBLIC_ für alle Variablen, die im Client benötigt werden. Alle anderen Variablen bleiben sicher auf dem Server und werden nicht an den Client gesendet.
build
Vercel
Netlify
Cloudflare
Docker
.env
npm run build ·
npx vercel --prod ·
netlify deploy --prod ·
docker build -t my-site .