Skip to content

Install Alta VMS

Alta VMS ships as a single Linux binary with the web UI and database embedded. The binary installs itself as a systemd service.

  • Linux x86-64 (Ubuntu 20.04+, Debian 11+, RHEL 8+, or any modern distro)
  • 512 MB RAM minimum
  • root access (for the one-time install)
  • ffmpeg on the host if you plan to export clips
  • One or more reachable Cesbo Alta servers
  1. Run the installer

    Terminal window
    curl -fsSL https://vms.cesbo.com/install.sh | sh

    The installer downloads the latest stable Linux x86-64 build, installs the binary to /usr/local/bin/, and runs altavms install. If you are not running as root, it uses sudo for the privileged steps.

That’s it. The installer prints the URL to open and the generated admin login.

To pin a specific build instead of the latest stable, download its binary directly and run the installer command manually. Pinned builds are published as raw binaries at https://cdn.cesbo.com/vms/builds/vms-<tag>, where the tag has no leading v — for example, release v260706 is the file vms-260706:

Terminal window
curl -Lo /usr/local/bin/altavms https://cdn.cesbo.com/vms/builds/vms-260706
chmod +x /usr/local/bin/altavms
sudo altavms install

The installer is idempotent — re-running it after downloading a newer binary updates the service while keeping your config and data.

  • Creates a dedicated altavms system user (no login).
  • Generates the encryption key, JWT secret, and a random admin password into /etc/altavms/altavms.env.
  • Writes a production config to /etc/altavms/config.yaml.
  • Stores the database and recordings under /var/lib/altavms/.
  • Installs and starts the altavms.service systemd unit.
  • Prints the access URL and admin credentials (shown once).
PathPurpose
/usr/local/bin/altavmsThe binary
/etc/altavms/config.yamlConfiguration
/etc/altavms/altavms.envSecrets (keys, admin password)
/var/lib/altavms/Database, clips, screenshots
/etc/systemd/system/altavms.serviceService unit

Open the URL printed by the installer (by default the server listens on port 3303):

http://your-server-ip:3303

Log in with the admin email and password shown by the installer. The email is always admin@localhost; the password is generated. Both are also stored in /etc/altavms/altavms.env.

Terminal window
sudo altavms status # unit state, readiness, data sizes
sudo altavms restart # validates the config, then restarts
sudo altavms logs -f # follow logs (no root needed)
altavms version # print version
sudo altavms uninstall # remove (add --purge to also delete data + user)

The service restarts automatically on failure (systemd Restart=on-failure). These are thin wrappers around systemctl/journalctl — see the CLI Reference for the full command set, including altavms doctor for offline diagnostics and altavms backup/altavms restore for backups.

To update to the latest stable build, re-run the installer — it downloads the latest binary, extracts it, and re-runs altavms install, keeping your config and database:

Terminal window
curl -fsSL https://vms.cesbo.com/install.sh | sh

To do the same by hand, https://vms.cesbo.com/latest serves a gzipped tarball containing the altavms binary:

Terminal window
curl -L https://vms.cesbo.com/latest | tar -xz
sudo ./altavms install