Deploy Next.js App on Seenode | Next.js Hosting & Deployment Guide
Deploy your Next.js app on Seenode quickly. Follow our step-by-step guide to connect Git, configure build/start commands, and go live in minutes.
This guide explains how to deploy your existing Next.js application to seenode.
Prerequisites
Before you begin, ensure you have:
- A seenode account at seenode.com
- Git configured on your machine
- Existing Next.js project ready to deploy (App Router or Pages Router)
- Node.js 18+ locally
Configure for seenode Deployment
Port Configuration
Your service must listen on the same port that you configure in the Port field for the web service. Next.js defaults to port 3000 for next start, so the simplest option is to use 3000 both in your start script and in the dashboard.
For a deeper dive into how ports work on seenode, see Configuring Your Application’s Port.
{ "scripts": { "dev": "next dev --turbopack", "build": "next build --turbopack", "start": "next start -p 3000" }}::::note[Why this matters]
Next.js next start accepts a -p flag to set the port. On seenode, there is no default container port and traffic is routed to whatever value you set in the Port field, so your app must listen on that same port (for example, 3000).
::::
Recommended Project Basics
- Place your App Router files under
src/app/(e.g.,src/app/page.tsxandsrc/app/layout.tsx). - API routes can live under
src/app/api/*. - Ensure your app builds locally with Turbopack or the default builder.
Directory/your-nextjs-app
- package.json
- next.config.js
Directorypublic/
- …
Directorysrc/
Directoryapp/
- layout.tsx
- page.tsx
Directoryapi/
- hello/route.ts
- .gitignore
Deploy on seenode
Push to Git
Commit your project and push it to GitHub or GitLab.
Create a Web Service
From the seenode Dashboard, create a new Web Service and connect your Next.js repository.
Configure Build & Start
seenode detects a Node.js project. Configure:
- Build Command:
npm ci && npm run build - Start Command:
npm start

Set the Port field (above Environment Variables) to the value your app listens on. Next.js defaults to
3000fornext start, so a common choice is to set the Port field to3000as well. You can choose a different port (for example,4000) as long as yournext start -p …command and the Port field match. The field starts empty, so set it before your first deploy. After the service is created, you can change the port from the project’s Settings tab.- Build Command:
Choose Pricing Tier
Select your preferred instance size and create your service.
Deploy
Click Create Web Service and watch logs until your web service is live.
Success
Once complete, your Next.js application is accessible via your service’s URL.
::::tip[Troubleshooting] If deployment fails, check the Logs tab in your seenode service dashboard. Build and runtime logs usually reveal the issue.
Port configuration mismatch
- On seenode, there is no default container port. Ensure your application listens on the port you configured in the Port field.
- If you override Next.js’s default of
3000, update yourstartscript accordingly, for example,next start -p 4000, and set the Port field to the same value. - Seeing a 502 Bad Gateway? Your app may not be listening on the expected port.
Multiple lockfiles warning (Turbopack)
- Next.js may warn that it inferred your workspace root if you have more than one lockfile in parent folders.
- Silence it by setting
turbopack.rootinnext.config.jsor removing extra lockfiles if not needed.
package.json JSON errors
- Ensure the
startscript string is valid JSON-escaped (notice the escaped quotes in the example above). ::::
Starting from Scratch?
If you don’t have a Next.js project yet:
Option 1: Use our Template (Recommended)
Next.js Web Service Template
Deploy a minimal Next.js web service with sensible defaults for seenode.Option 2: Create from Next.js Docs + seenode Setup
Follow the official Next.js documentation to create a new project, then return here for seenode-specific steps.
seenode-Specific Setup Steps:
- Ensure
package.jsonhasbuildandstartas shown above. - Use a production start command that matches the Port field you configure on seenode, for example,
next start -p 3000if you set the Port field to3000. - Push to your Git provider and create a Web Service in seenode.
Next Steps
Connect to a Database
Add PostgreSQL or MySQL for dynamic web services with server-side features