Docs

What is HostRails?

HostRails is a self-hosted deployment control plane: a single Node.js service plus a Caddy proxy and a BuildKit builder, running on a server you own. It gives you push-to-deploy from GitHub, managed databases with a built-in explorer, automatic HTTPS domains, encrypted environment variables, instant rollbacks, and an audit trail — without a hosted platform's bill or lock-in.

Architecture at a glance

PieceWhat it does
Control planeNode.js + SQLite service (systemd). Serves the dashboard and API, orchestrates builds and containers.
CaddyReverse proxy on ports 80/443. Routes domains to app containers, issues HTTPS certificates on demand.
BuildKit + RailpackBuilds your repositories into images — framework auto-detection, no Dockerfile required (respected if present).
Agents (optional)A small Go binary on additional VPSes. Connects outbound over WebSocket with signed commands — no inbound ports.

Quickstart

On a fresh Ubuntu/Debian server (using the installer served by an existing panel — copy your exact command from System → Install HostRails on another server):

curl -fsSL https://panel.hostrails.xyz/get.sh | sudo bash -s -- --key <your-key>

Installing your first panel ever? See Install on a VPS for the from-scratch paths.

  1. Open http://<server-ip>:3000 and create your admin account (first visit only — there are no default credentials).
  2. In Settings, click the suggested <ip>.sslip.io wildcard root domain — it resolves with zero DNS setup.
  3. Connect GitHub (guided OAuth app creation or a personal access token).
  4. Create a project, pick a repository, and press Create & deploy.

Full details in Install on a VPS.

Where things live

The default install keeps everything under /opt/hostrails-panel. Runtime state — the SQLite database, encryption keys, cloned repositories, backups, and logs — lives in the data/ directory inside it. Back that directory up and you can rebuild the rest.