Next.js obsługuje kilka celów wdrażania, częściowo kontrolowanych przez konfigurację output. Właściwy wybór zależy od tego, czy potrzebujesz serwera Node, kontenerów czy czystego hostingu statycznego.
Tryby wyjścia kompilacji
. = {
};
Next.js obsługuje kilka celów wdrażania, częściowo kontrolowanych przez konfigurację output. Właściwy wybór zależy od tego, czy potrzebujesz serwera Node, kontenerów czy czystego hostingu statycznego.
. = {
};
Uruchamia serwer Node.js, więc otrzymujesz wszystko: SSR, ISR, Server Actions, Route Handlers, optymalizacja obrazów, middleware. To to, co używają platformy takie jak Vercel (twórca Next.js, bez konfiguracji) i hosty Node.
# Next traces only the needed files into .next/standalone → a tiny, self-contained server
COPY --from=builder /app/.next/standalone ./
CMD ["node", "server.js"]
standalone tworzy minimalny folder tylko z rzeczywiście używanymi zależnościami, idealny dla małych obrazów Docker na AWS, GCP, twoich własnych serwerach itd. Zachowujesz wszystkie funkcje serwera.
next build → out/ (plain HTML/CSS/JS, deployable to any static host: S3, GitHub Pages, Netlify CDN)
Wyeksportowanie statyczne daje najtańszy, najprostszy hosting, ale wyłącza funkcje serwera: bez SSR, bez ISR, bez Route Handlers, bez Server Actions, bez optymalizacji obrazów w locie. Odpowiednie tylko dla całkowicie statycznych witryn.
Need SSR/ISR/Server Actions, want zero-config → Vercel (or a Node host) — default output
Want containers / self-host with full features → output: "standalone" + Docker
Purely static content (docs, marketing) → output: "export" → any static CDN
- Runtime choice (Edge vs Node) affects where functions run
- Self-hosting ISR/caching needs persistent storage or a shared cache
- Image optimization on non-Vercel hosts may need a custom loader
Wdrażanie to nie jeden rozmiar dla wszystkich: tryb output określa, które funkcje Next.js przetrwają.
Wiedzenie, że wyjście default/Node zachowuje wszystkie możliwości serwera, standalone pakuje je do samodzielnego hostingu/Docker, a export wymienia wszystkie funkcje serwera za czysty hosting statyczny, pozwala ci dopasować kompilację do twojej infrastruktury — i uniknąć pułapki, w której output: "export" dyskretnie psuje SSR/ISR/Server Actions.