Next.js는 Node.js 서버, Docker 컨테이너, 정적 사이트(static export), 다양한 플랫폼 어댑터 등 여러 방식으로 배포할 수 있습니다.
배포 옵션 | 지원 기능 |
---|---|
Node.js 서버 | 전체 지원 |
Docker 컨테이너 | 전체 지원 |
정적 export | 일부 제한 |
어댑터 | 플랫폼별 지원 |
Node.js 서버
Next.js는 Node.js를 지원하는 모든 제공업체에 배포할 수 있습니다. package.json
에 아래와 같이 "build"
와 "start"
스크립트가 포함되어야 합니다:
{
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start"
}
}
npm run build
로 애플리케이션을 빌드한 후, npm run start
로 Node.js 서버를 시작하세요. 이 방식은 Next.js의 모든 기능을 지원합니다. 필요하다면 커스텀 서버로 전환할 수도 있습니다.
템플릿
- Flightcontrol
- Railway
- Replit
Docker
Next.js는 Docker 컨테이너를 지원하는 모든 환경에 배포할 수 있습니다. Kubernetes, 클라우드 제공업체 등 다양한 환경에서 사용할 수 있습니다.
Docker 배포 역시 Next.js의 모든 기능을 지원합니다.
템플릿
- Docker
- Docker Multi-Environment
- DigitalOcean
- Fly.io
- Google Cloud Run
- Render
- SST
정적 export
Next.js는 정적 사이트 또는 SPA(Single-Page Application)로 시작한 뒤, 서버 기능이 필요할 때 업그레이드할 수 있습니다.
정적 export는 HTML/CSS/JS 정적 자산을 제공할 수 있는 모든 웹 서버(AWS S3, Nginx, Apache 등)에 배포할 수 있습니다. 단, 서버가 필요한 Next.js 기능은 지원하지 않습니다.
템플릿
- GitHub Pages
어댑터(Adapters)
Next.js는 다양한 플랫폼에 맞게 어댑터를 통해 배포할 수 있습니다. 각 제공업체의 문서를 참고하여 지원 기능을 확인하세요.
- AWS Amplify Hosting
- Cloudflare
- Deno Deploy
- Netlify
- Vercel
참고: 모든 플랫폼에서 사용할 수 있는 Deployment Adapters API를 개발 중입니다. 완성 후 직접 어댑터를 작성하는 방법도 문서에 추가될 예정입니다.