Self-hosted deployment control plane

Deploy apps and databases on your own server.

Push-to-deploy from GitHub, provision Postgres / Redis / MongoDB with a built-in data explorer, automatic HTTPS domains, encrypted secrets, and instant image-pinned rollbacks — on a VPS you control.

Install on a fresh Ubuntu/Debian server
$ curl -fsSL https://panel.hostrails.xyz/get.sh | sudo bash -s -- --key <your-key>

Every HostRails panel hosts its own installer — grab your exact command (with key) from System → Install HostRails on another server. First server ever? See the install docs.

AppsPostgresRedis MongoDBDomainsBackups LogsRollbacksRemote VPS agents
How it works

Your server gets a cockpit.

One command turns a bare VPS into a private deployment platform. Everything after that happens in the dashboard.

01

Run the installer

It installs Docker, Node, and the build toolchain, starts Caddy and BuildKit, and runs the control plane under systemd. Open the printed URL and create your admin account — no default credentials, ever.

02

Connect GitHub & create services

Pick a repository, and HostRails detects the branch, names the service, wires the push webhook, and deploys — builds run through Railpack + BuildKit, no Dockerfile required (but respected if present).

03

Add databases and domains

Provision Postgres, Redis, or MongoDB in one click — sibling apps automatically receive a ready-made connection URL. Generated *.sslip.io domains work with zero DNS setup; custom domains get automatic HTTPS from Caddy.

Everything included

Batteries, not subscriptions.

The workflows you'd expect from a hosted platform, running as a single service on hardware you pay pennies for.

🚀

Push-to-deploy

GitHub webhooks trigger builds on every push. Live streaming build and runtime logs with search, filters, and download.

↩️

Instant rollbacks

Every deployment keeps its image and environment snapshot. Roll back to any previous success in seconds — no rebuild.

🗄️

Databases with an explorer

Postgres, Redis, and MongoDB with an in-dashboard table browser, SQL console, key editor, document viewer, backups, and one-click credential reveal.

🔐

Encrypted secrets

Environment variables are encrypted at rest and write-only by default. Paste a whole .env, import a file, or edit everything as a file — reveals are audit-logged.

🌐

Domains & automatic HTTPS

Wildcard subdomains from your root domain (or zero-DNS sslip.io), custom domains with DNS guidance and verification, certificates issued on demand by Caddy.

📡

Remote VPS agents

Scale beyond one box: agents on additional servers connect outbound over WebSocket with signed commands — no inbound ports, one-line install.

🧭

Full audit trail

Every authenticated state change — deploys, secret reveals, credential rotations — lands in a durable audit log.

🔑

Scoped API keys

Programmatic access with per-scope, per-project tokens. Session-only admin endpoints stay walled off from API keys.

💸

100% free & self-hosted

No seats, no deploy fees, no usage meters. Your server, your data, your platform.

Setup that configures itself

From zero to deployed in minutes.

HostRails detects your public IP, offers a zero-DNS wildcard domain, generates webhook secrets, pre-fills the GitHub OAuth app form, and warns before you generate an install command a server can't reach. The sharp edges have been filed off.

# fresh droplet → running platform
$ curl -fsSL https://panel.hostrails.xyz/get.sh | sudo bash -s -- --key ●●●●●●●●
==> Installing Docker, Node 22, Go…
==> Building HostRails…
==> Bootstrapping Caddy + BuildKit…
==> Done!  Open http://your-server:3000 and create your admin account.