Framework Deploy

Deploy Node.js apps on your own VPS

Last updated June 15, 2026
Reviewed by Better-PaaS team

Deploy Node.js applications from Git with Better-PaaS, Nixpacks, Docker containers, automatic HTTPS, logs, and rollback support.

Overview

Better-PaaS can deploy Node.js projects from a Git repository or Docker image. The platform builds the app, runs it in a container, routes traffic through Caddy, and gives you logs, env vars, domains, databases, and rollbacks from the dashboard.

What Better-PaaS expects

Node.js projects should have a clear build and start path. For this stack, the common shape is JavaScript services, workers, APIs, and full-stack apps. If Nixpacks does not detect the project correctly, use explicit build/start commands or a Dockerfile.

Deployment steps

Connect the repository, choose the branch, set environment variables, attach any database, deploy, then verify the app responds on the platform-provided port. Better-PaaS will handle container lifecycle and HTTPS routing after the app is healthy.

  • Connect Git repository
  • Set build and runtime variables
  • Add Postgres, Redis, or MySQL if needed
  • Deploy and inspect logs
  • Add domain and verify HTTPS

Common mistakes

The most common issue is hard-coding a port instead of listening on the provided PORT variable. Build failures usually come from missing lockfiles, missing scripts, or framework detection that needs a custom Dockerfile.

Node.js service deploy

Ensure package.json defines "start" for production. Nixpacks detects Node from lockfiles; without them builds may pick inconsistent dependency versions.

  • Commit package-lock.json, pnpm-lock.yaml, or yarn.lock
  • Listen on process.env.PORT
  • Set NODE_ENV=production

FAQ

Can Better-PaaS deploy Node.js from Git?

Yes, when the repository can be built by Nixpacks or by a Dockerfile you provide.

Can Node.js apps use databases?

Yes. Better-PaaS can provision Postgres, Redis, and MySQL containers and inject connection variables into apps.