Back to all templates
Next.js logo

Next.js

Development512MB+ RAM

Production-ready Next.js application (requires existing Next.js project with package.json)

developmentframeworksnextjsopen-sourceself-hosteddocker

Deploy Next.js in 3 Steps

1

Connect Your VPS

Add your server credentials to Server Compass

2

Select Next.js

Choose from our template library

3

Deploy & Configure

Fill in settings and click Deploy

No Docker knowledge required
Step-by-step deployment guide

Deploy Next.js on a VPS with Server Compass

Use the Next.js template in Server Compass to deploy a generated starter app on your VPS, then verify the app loads in a browser.

About 8 minutesBrowser verified
1
Step 1

Open the server Apps tab

Select the tutorial-vps VPS, open the Apps tab, and start a new app deployment.

Server Compass Apps tab before creating a Next.js app
2
Step 2

Choose an app template

Click New App and choose the template deployment path so Server Compass can load the built-in catalog.

Choosing to deploy an app from a Server Compass template
3
Step 3

Search for Next.js

Use the template picker search to find Next.js in the Server Compass template catalog.

Searching for Next.js in the Server Compass template picker
4
Step 4

Select the Next.js template

Choose the Next.js template. Server Compass fills the compose services, variables, and build settings for this template.

Next.js template selected in Server Compass
5
Step 5

Review the Next.js settings

Confirm the app name and generated settings. In this run, the app was named nextjs-demo.

Reviewing Next.js project settings and compose services
6
Step 6

Deploy Next.js

Review the generated compose settings, confirm the port check passes, and click Deploy.

Reviewing Next.js generated settings before deployment
7
Step 7

Watch the deployment progress

Keep the deployment modal open while Server Compass uploads files, starts containers, and verifies the stack.

Server Compass deploying the Next.js template on the VPS
8
Step 8

Confirm Next.js is running

After deployment finishes, return to the Apps tab and confirm the Next.js app is marked Running.

Next.js template running in the Server Compass Apps tab
9
Step 9

Open Next.js in the browser

Open the application URL in a browser. The loaded Next.js page confirms the template is reachable.

The deployed Next.js app loaded in a browser

After Next.js Opens

  • Replace the generated starter with your real Next.js project when you are ready.
  • Add a domain and HTTPS before serving production users.
  • Keep secrets in environment variables instead of committing them to your repository.

Verified Result

Next.js loaded successfully at http://167.233.138.53:3000/.

Next.js deployment questions

What does the Next.js template deploy?

Use the Next.js template in Server Compass to deploy a generated starter app on your VPS, then verify the app loads in a browser.

Which port did the tutorial use?

The tutorial used host port 3000, mapped to container port 3000.

Should this become a blog post?

No. The deployment guide should live on the Next.js template detail page and be linked from the reusable template deployment docs page.

Terminal Deployment

Next.js CLI Deployment

Deploy Next.js the traditional way with SSH and Docker Compose.

1

SSH into Your Server

Launch your preferred terminal and connect to your VPS using SSH.

terminal
# Log into your server
ssh root@<your-server-ip>

# If using key-based auth
ssh -i ~/.ssh/my-key root@<your-server-ip>

First time? Docker not installed? Run: curl -fsSL https://get.docker.com | sh

2

Create Working Directory

Prepare a directory for your application files and configuration.

terminal
# Create and navigate to project directory
mkdir -p ~/apps/nextjs
cd ~/apps/nextjs
3

Configure Your Containers

Create the Docker Compose configuration file with these contents:

docker-compose.yml
services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "3000:3000"
    environment:
      - NODE_ENV=production
      - PORT=3000
      - HOSTNAME=0.0.0.0
      - NEXT_TELEMETRY_DISABLED=1
    restart: unless-stopped
Deployment Settings
PORTHost port to expose(default: 3000)
4

Deploy with Docker Compose

Launch the application stack using Docker Compose.

terminal
# Deploy the application
docker compose up -d

# Check container health
docker compose ps

# Monitor logs
docker compose logs -f --tail=100
5

Open Required Ports

Enable external access by opening the necessary port.

terminal
# Allow the application port through firewall
sudo ufw allow 3000/tcp
sudo ufw reload

# Access your app at:
# http://your-server-ip:3000
Skip the Terminal

There's an easier way. Meet Server Compass.

Server Compass makes deploying Next.js effortless. Visual setup, one-click deploy, done.

  • Intuitive dashboard
  • Deploy in 3 minutes
  • Free SSL included
  • Blue-green deploys
  • Real-time logs
  • Version history
Download Server Compass$29 one-time • Lifetime license

After Deployment

After deploying Next.js with Server Compass, complete these steps to finish setup

1

Test the application

2

Set up reverse proxy for HTTPS

Need help? Check out our documentation for detailed guides.

Next.js FAQ

Common questions about self-hosting Next.js

How do I deploy Next.js with Server Compass?

Simply download Server Compass, connect to your VPS, and select Next.js from the templates list. Fill in the required configuration and click Deploy. The entire process takes under 3 minutes.

What are the system requirements for Next.js?

Next.js requires a minimum of 512MB RAM. We recommend a VPS with at least 1024MB RAM for optimal performance. Any modern Linux server with Docker support will work.

Can I migrate my existing Next.js data?

Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard Next.js backup and restore procedures.

How do I update Next.js to the latest version?

Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest Next.js image will be pulled and deployed with zero downtime.

Is Next.js free to self-host?

Next.js is open-source software. You only pay for your VPS hosting (typically $5-20/month) and optionally Server Compass ($29 one-time). No subscription fees or per-seat pricing.

Ready to Self-Host Next.js?

Download Server Compass and deploy Next.js to your VPS in under 3 minutes. No Docker expertise required.

Download Server Compass