Guide · For administrators
Installation
Download and install
On the panel server, as root:
curl -fsSL https://koavm.com/releases/koavm-latest-linux-amd64.gz | gunzip > koavm
curl -fsSLO https://koavm.com/releases/install.sh
sudo bash install.sh ./koavm vm.yourdomain.com
koavm-latest is always the latest stable version (versions are listed in What's new; each one stays downloadable as koavm-VERSION-linux-amd64.gz). With the domain name the panel requests its HTTPS certificate from Let's Encrypt on its own: the domain must already point to the server and ports 80 and 443 must be open. Without a domain the panel listens over HTTP on port 8080: only for testing.
The script:
- creates the
koavmsystem user and the data folder/var/lib/koavm; - installs the binary in
/usr/local/bin/koavm(keeping the previous version askoavm.prev); - creates the
koavmservice (restricted: it only writes to its own folder) and thekoavm-updateservice, which installs the updates requested from the panel.
Running it again with a new binary updates the panel without touching the data.
The first administrator
sudo -u koavm koavm user add --data /var/lib/koavm --email you@example.com --name "Your name" --role admin
The command prints the password. Sign in at https://vm.yourdomain.com/admin and change it from Account › Change password.
Where things are
| What | Where |
|---|---|
| Binary | /usr/local/bin/koavm (previous: koavm.prev) |
| Data and database | /var/lib/koavm (koavm.db) |
| Start options | /etc/default/koavm (KOAVM_ARGS=--domain vm.yourdomain.com) |
| Log | journalctl -u koavm |
| Database copies made before updates | /var/lib/koavm/koavm-prima-VERSION.db |
Back up /var/lib/koavm together with the server backups: it holds the database, the certificate the panel uses with the nodes and the panel's SSH key.