Self-host a project
Updated 2026-09-03
Every project is a standard layout with no proprietary runtime, so it runs wherever Node runs. Start by exporting it.
On your machine
npm install
npm run dev
On a Linux server (VPS)
- Copy the exported project to the server (or clone it from GitHub).
- Install Node.js 20 or newer.
npm install, thennpm run build. Openpackage.jsonto see the exact scripts for your project.- Set the environment the app expects. A full-stack cloud project expects
DATABASE_URLpointing at a PostgreSQL database you control; the Builder's own servers run PostgreSQL 16. - Run the built server under a process manager (systemd or PM2) so it restarts on failure, and put a reverse proxy such as Caddy or nginx in front of it for TLS.
In a container
If the project has no Dockerfile, a minimal one is enough: a Node base image, npm ci, npm run build, and the project's start command. Pass environment variables with -e or an env file, and run PostgreSQL as a separate container or a managed database.
On a managed platform
Platforms that deploy from a Git repository (Railway, Render, Fly.io and similar) need the repository, the build command (npm run build), the start command from package.json, and the environment variables. Push to GitHub first, then connect the repository in the platform's dashboard.
Moving a cloud project's data
If the project ran on a Builder cloud server, its database is a normal PostgreSQL 16 database on that server. Use pg_dump on the server and pg_restore (or psql) into the database you are moving to.