Installation
Pruvon runs as a systemd service on the same Linux host as Dokku. The installer handles the full setup: downloading the binary, creating the service account, writing the systemd unit, and enabling automatic backups.
Requirements
- A Linux host with Dokku already installed
- Root or sudo access
- systemd and Nginx available on the host
Install
Install the latest release:
curl -fsSL https://pruvon.dev/install.sh | sudo bashIf curl is not available:
wget -qO- https://pruvon.dev/install.sh | sudo bashInstall a specific version
curl -fsSL https://pruvon.dev/install.sh | sudo env PRUVON_VERSION=v0.1.0 bashSet a custom listen address
On a fresh install, you can set the initial listen address:
curl -fsSL https://pruvon.dev/install.sh | sudo env PRUVON_LISTEN=127.0.0.1:9090 bashPRUVON_LISTEN only takes effect when the installer is creating /etc/pruvon.yml for the first time. On an existing installation, edit the config file directly instead. See Configuration.
What the installer does
- Downloads the release binary from GitHub and verifies it against the published checksums
- Creates the
pruvonsystem user and adds it to the necessary groups - Installs the binary to
/opt/pruvon/pruvonwith a symlink at/usr/local/bin/pruvon - Creates the runtime, log, and backup directories
- Writes
/etc/pruvon.ymlwith a randomly generated admin password (first install only) - Installs the systemd unit, sudoers policy, daily backup cron job, and logrotate config
- Enables and starts the
pruvonservice
The generated admin password is printed once at the end of the install output. Save it before the terminal scrolls past.
First login
After a fresh install:
- Username:
admin - Password: the random password printed by the installer
Pruvon stores only the bcrypt hash in /etc/pruvon.yml. The plain-text password is never written to disk.
Change the password after first login. See Configuration - Admin Login.
Installed file layout
| Path | Purpose |
|---|---|
/etc/pruvon.yml | Configuration file |
/opt/pruvon/pruvon | Binary |
/usr/local/bin/pruvon | Symlink to the binary |
/etc/systemd/system/pruvon.service | systemd unit |
/etc/sudoers.d/pruvon | Sudoers policy for the service account |
/etc/cron.daily/pruvon-backup | Daily backup trigger |
/etc/logrotate.d/pruvon | Log rotation policy |
/var/log/pruvon/ | Activity and backup log directory |
/var/lib/dokku/data/pruvon-backup/ | Backup archive storage |
Update
Re-run the installer. It detects an existing installation and updates the binary and supporting files in place:
curl -fsSL https://pruvon.dev/install.sh | sudo bashYour /etc/pruvon.yml is preserved. The only exception: if the config still contains the bundled example admin password hash, the installer replaces it with a new random password and prints it.
After updating, confirm the service is running:
sudo systemctl status pruvonVerify the installation
Check that the service started:
sudo systemctl status pruvonFollow the service log to watch for errors:
sudo journalctl -u pruvon -fNext steps
- Configuration -- understand and customize
/etc/pruvon.yml - Operations -- service management, logs, and backup commands
- Security -- lock down access before exposing Pruvon beyond localhost