Skip to Content
Getting StartedInstallation

Installation

Run the one-liner to download and launch the interactive TUI installer:

curl -fsSL https://github.com/RantAI-dev/RustBill/releases/latest/download/install.sh | sudo bash

The installer guides you through mode selection, configuration, database setup, and service creation.

Manual Install

Download the installer binary directly from the latest release :

curl -LO https://github.com/RantAI-dev/RustBill/releases/latest/download/rustbill-installer-x86_64-linux-musl chmod +x rustbill-installer-x86_64-linux-musl sudo ./rustbill-installer-x86_64-linux-musl install

Non-Interactive Install

For scripted or CI deployments, use the --non-interactive flag:

sudo ./rustbill-installer-x86_64-linux-musl install \ --non-interactive \ --mode full \ --db-password "your-secure-password" \ --api-port 3001 \ --frontend-port 3000

All available flags:

FlagDefaultDescription
--modefullfull, backend, frontend, or dev
--install-dir/opt/rustbillInstallation directory
--db-hostlocalhostPostgreSQL host
--db-port5432PostgreSQL port
--db-namerantai_billingDatabase name
--db-userrantai_billingDatabase user
--db-password(auto-generated)Database password
--api-port3001Rust API server port
--frontend-port3000Next.js frontend port

Installation Modes

ModeWhat it installs
fullPostgreSQL + Rust API + Next.js frontend + systemd services
backendPostgreSQL + Rust API only + systemd service
frontendNext.js frontend only + systemd service (connects to existing backend)
devClones repo, builds from source, no systemd

What the Installer Does

  1. Preflight checks — verifies OS, architecture, RAM, disk, ports
  2. Installs dependencies — PostgreSQL 17, system packages
  3. Sets up database — creates user and database
  4. Downloads binaries — static rustbill-server binary from GitHub Releases
  5. Downloads frontend — pre-built Next.js standalone tarball from GitHub Releases
  6. Generates configurationproduction.toml and .env with your settings
  7. Creates systemd servicesrustbill-backend and rustbill-frontend
  8. Verifies installation — health checks on all services

Migrations run automatically when the backend starts. A default admin user (admin@rustbill.local / admin123) is created on first boot.

Verify

curl http://localhost:3001/health # => {"status":"ok"}

Check service status:

sudo systemctl status rustbill-backend sudo systemctl status rustbill-frontend

View logs:

sudo journalctl -u rustbill-backend -f

Uninstall

sudo rustbill-installer uninstall

This stops services, removes binaries and config, but preserves the database. To drop it manually:

sudo -u postgres dropdb rantai_billing sudo -u postgres dropuser rantai_billing

Next Steps

Last updated on