keel CLI is a single static binary with no runtime dependencies. It
contains the local UI (keel dev), the headless deployer (keel deploy),
and the manifest generator. Releases are published on
GitHub for macOS, Linux, and
Windows on amd64 and arm64.
Prerequisites
- Docker, running, on any machine that will execute deployments. The
CLI itself starts without it, but
keel devandkeel deploybuild the environment image and run the steps with the Docker daemon.
Install
- macOS and Linux
- Windows
- Go
- Download
checksums.txt, and
installs keel into /usr/local/bin — using sudo when that directory
is not writable and a terminal is attached, and falling back to
~/.local/bin otherwise.Two environment variables adjust it:Verify
If
keel --version prints a version, you are ready for the quickstart.Upgrade
keel update replaces the binary in place after verifying the download’s
checksum; keel update --check only tells you whether a newer release
exists. The CLI also looks for a new release in the background at most
once a day and mentions it after a command — set KEEL_NO_UPDATE_CHECK=1
to turn that off. Details are in the CLI reference.
Running the install command again works too — it always installs the latest
release, or the release pinned with KEEL_VERSION. With Go, re-run
go install with the new version.
Uninstall
Delete the binary (/usr/local/bin/keel, ~/.local/bin/keel, or
%LOCALAPPDATA%\Programs\keel\keel.exe). Keel keeps two other things on a
machine, both safe to delete:
.keel/inside each repository you rankeel devin — the local SQLite database with targets, encrypted values, and run history.- A key file that encrypts those values:
~/Library/Application Support/keel/dev.keyon macOS,~/.config/keel/dev.keyon Linux,%AppData%\keel\dev.keyon Windows. Deleting it makes every saved value in every.keel/dev.dbon that machine unreadable. The same directory holdsupdate-check.json, the background update check’s last answer.
Vendoring Keel into a repository
Teams that should not install anything can get the full local Keel experience from a repository that has the binaries committed. See Embed Keel in a repository.Keel Cloud
The multi-user edition,keel-cloud, is distributed as a Linux binary in the
same releases and as a container image, ghcr.io/ucgeorge/keel-cloud. See
Self-hosting Keel Cloud.