Better-PaaS

Quickstart

Go from a fresh server to a live, HTTPS-secured app in under 10 minutes.

This is the fastest path from nothing to a deployed app. We'll install Better-PaaS, log in, and deploy a project. If you want the slower, more explained version, read Getting Started instead.

What you need before you start

  • A Linux server (a VPS) running Ubuntu or Debian, with root/sudo access. A small $5/month box is enough to begin.
  • The ability to SSH into that server.
  • A Git repository with an app you want to deploy.

Step 1 — Install Better-PaaS

SSH into your server, then run the one-command installer:

On your server
curl -fsSL https://raw.githubusercontent.com/sumon-ohid/better-paas/main/install.sh | bash

This installs everything Better-PaaS needs — Go, Docker, Nixpacks, Caddy, and Node.js — then builds and starts the dashboard and API.

On a fresh machine this takes a few minutes. Grab a coffee. ☕

When it finishes, you'll see a summary like this:

═══════════════════════════════════════════════════════
   ✅  Better-PaaS installed successfully!
═══════════════════════════════════════════════════════

  Dashboard:  http://localhost:3000
  API:        http://localhost:8080

🔑  ADMIN TOKEN — you need this to LOG IN to the dashboard

      bp_live_a1b2c3d4e5f6...      ← copy this

Step 2 — Grab your admin token

The installer prints your admin token — this is the password to your dashboard. Copy it somewhere safe.

Lost it? You can print it again any time:

On your server
cd ~/better-paas/backend && ./server token

Step 3 — Open the dashboard and sign in

In your browser, open the dashboard:

  • If Better-PaaS is on your own machine: http://localhost:3000
  • If it's on a remote VPS: http://YOUR_SERVER_IP:3000

Paste your admin token into the sign-in screen. You're in.

Step 4 — Deploy your first app

  1. Click Deploy a service.
  2. Paste your Git repository URL (e.g. https://github.com/you/my-app).
  3. Pick the branch to deploy (usually main).
  4. Click Deploy.

Better-PaaS now:

  • clones your repo,
  • detects the framework and builds it with Nixpacks,
  • starts it in a Docker container,
  • and routes it through Caddy.

Watch the build logs stream live in the dashboard. When the status turns Running, your app is online. 🎉

Step 5 — Visit your app

Each app gets an automatic URL like:

http://<app-id>.<your-server-ip>.sslip.io

Click the link in the dashboard to open it. (sslip.io is a free service that turns any IP into a working hostname — no DNS setup needed to get started.)

What's next?

You have a live app. Now make it production-ready:

On this page