Install the agent
Run curl -fsSL https://get.unrent.dev/install.sh | sudo sh -s -- --token <token> on the server with the one-time token from the console. The script checks the server, verifies the release’s SHA-256 twice, installs two systemd services and connects.
What the installer does
- 01
Checks the server
Root, Linux with systemd, amd64 or arm64,
curlorwget,sha256sumorshasum, and 200 MB free in/var/lib. It refuses a server that is already enrolled and warns when Docker is missing. - 02
Downloads and verifies
It downloads the release for your architecture and checks its SHA-256 against the release manifest and the release’s
SHA256SUMS. Any mismatch stops it before anything is written. - 03
Installs
Binaries go to
/usr/local/lib/unrent/<version>/, with the previous version kept next to it. It creates theunrentsystem user and theunrentdandunrent-execservices. - 04
Enrolls and connects
The token is passed on standard input, never printed. The script waits up to 30 seconds for the agent to connect and prints its id.
The script is plain POSIX sh, short enough to read before you run it, and does nothing until its last line, so a download cut short runs nothing.
Flags
| Flag | What it does |
|---|---|
--token <t> | The one-time enrollment token from the console |
--version <v> | Install this release instead of the newest (the last 3 are served) |
--force | Enroll again over an existing enrollment; the old identity is moved aside, never deleted |
--install-docker | Install Docker from the distribution’s packages when it is missing (docker.io 27 or newer) |
--uninstall | Stop and remove the services and binaries; keeps /var/lib/unrent and /etc/unrent |
--purge | With --uninstall: also delete the state and the unrent user |
--download-only <dir> | Download, verify and unpack into a folder; installs nothing and needs no root |
Upgrade and uninstall
Run the same command without --token to upgrade to the newest release. It keeps the server’s identity and restarts the agent only if something changed.
curl -fsSL https://get.unrent.dev/install.sh | sudo sh -s -- --uninstallContainers, databases and their data are never touched. Remove the server in the console as well.
Coming One-click signed updates from the console, with automatic rollback if the new agent does not connect within 5 minutes. Until release signing is set up, upgrade by re-running the installer.
Without Docker
The agent installs, enrolls and reports inventory without Docker. Apps and databases fail with a clear error until Docker Engine 27 or newer runs; then restart unrent-exec and nothing else is needed.
Verify a release yourself
sh install.sh --download-only ./unrent
cd unrent && sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify unrent-<v>-linux-amd64.tar.gz --repo PILOTAAI/unrent \
--signer-workflow PILOTAAI/unrent/.github/workflows/agent-release.ymlEach release carries SLSA build provenance that binds every tarball to the workflow run that built it.
While the agent’s repository is private, gh attestation verify needs a GitHub login with read access to it. Anyone will be able to verify once the repository is public.
Updated . This page as Markdown.