Next.js tukee useita käyttöönotto-tavoitteita, joita ohjataan osittain output-konfiguraatiolla. Oikea valinta riippuu siitä, tarvitsetko Node-palvelinta, säilöitä vai puhdasta staattista isännöintiä.
Build-tulosten tilat
. = {
};
Next.js tukee useita käyttöönotto-tavoitteita, joita ohjataan osittain output-konfiguraatiolla. Oikea valinta riippuu siitä, tarvitsetko Node-palvelinta, säilöitä vai puhdasta staattista isännöintiä.
. = {
};
Ajaa Node.js-palvelinta, joten saat kaiken: SSR, ISR, Server Actions, Route Handlers, kuvaoptimointia, middleware. Tätä käyttävät alustat kuten Vercel (Next.js:n valmistaja, nolla-konfiguraatio) ja Node-isännöijät.
# 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 tuottaa minimalisen kansion, jossa on vain todella käytettävät riippuvuudet, ihanteellinen pienille Docker-kuville AWS:ssä, GCP:ssä, omissa palvelimissa jne. Säilytät kaikki palvelinominaisuudet.
next build → out/ (plain HTML/CSS/JS, deployable to any static host: S3, GitHub Pages, Netlify CDN)
Staattinen vienti antaa halvin, yksinkertaisimman isännöinnin mutta poistaa palvelinominaisuudet käytöstä: ei SSR:ää, ei ISR:ää, ei Route Handlersia, ei Server Actioneja, ei kuvien optimointia lennossa. Sopii vain täysin staattisille sivustoille.
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
Käyttöönotto ei ole kaikille sopiva ratkaisu: output-tila määrittää, mitkä Next.js-ominaisuudet säilyvät.
Tieto siitä, että oletus/Node-tuloste säilyttää kaikki palvelinominaisuudet, standalone pakkaa ne Docker/itse isännöitävää varten, ja export vaihtaa kaikki palvelinominaisuudet puhtaaseen staattiseen isännöintiin, antaa sinulle mahdollisuuden sovittaa build infrastruktuuriisi — ja välttää output: "export" ansan, joka äänettömästi rikkoo SSR/ISR/Server Actionit.