Skip to main content

The sve tool

sve lives on the server, outside the containers, and everything that changes the installation goes through it. It installs itself along with the product, at /usr/local/bin/sve.

It runs outside the containers because updating means commanding Docker, and no container in this product is given that access: a remote flaw in the panel would otherwise be total control of the machine.

Commands

sve status # version, licence and health of each service
sve doctor # diagnosis when something is wrong
sve update [--to X.Y.Z] # updates; backs up first and rolls back if anything is unhealthy
sve rollback # undoes the last update
sve backup # database backup
sve restore FILE # restores a backup into the database (destructive)
sve logs <service> [-n N] # logs for one service
sve self-update # updates this tool
sve version

--dir PATH points at the installation directory if you are not running from inside it.

sve status when the API will not start

sve status reads the licence state from the database, not from the API. That is deliberate: the moment someone types sve status is usually exactly the moment the API is not responding, and a diagnostic tool that needs the system to be working is no use for diagnosing anything.

sve self-update

Downloads the latest published version of the tool and replaces itself. It uses the same credential it already uses to pull images, so there is nothing new to store.

It will not install a version older than the one you have unless you ask it to:

sve self-update --to 1.12.0 # going back, on purpose