Installation
Linux
Requires systemd
Lerd runs every container as a Podman Quadlet and every worker as a systemd user service, so a systemd-based distro is required. OpenRC (Gentoo, Artix-openrc, Alpine), runit (Void, Artix-runit), s6, and sysvinit-based distros (Devuan) are not supported.
Tested and known-good: Ubuntu, Fedora, Arch, Debian, Mint, Pop!_OS, openSUSE, CachyOS, Omarchy. Any systemd distro should work.
One-line installer (recommended)
curl -fsSL https://lerd.sh/install.sh | bashwget -qO- https://lerd.sh/install.sh | bashgit clone https://github.com/geodro/lerd
cd lerd
make build
make install # installs to ~/.local/bin/lerd
make install-installer # installs lerd-installer to ~/.local/bin/The installer will:
- Check and offer to install missing prerequisites (Podman, NetworkManager, unzip)
- Download the latest
lerdbinary for your architecture (amd64 / arm64) - Install it to
~/.local/bin/lerd - Add
~/.local/binto your shell'sPATH(bash, zsh, or fish) - Automatically run
lerd installto complete environment setup
DNS setup requires sudo
lerd install writes to /etc/NetworkManager/dnsmasq.d/ and /etc/NetworkManager/conf.d/ and restarts NetworkManager. This is the only step that requires sudo.
After install, reload your shell or open a new terminal so PATH takes effect.
lerd install will:
- Create XDG config and data directories
- Create the
lerdPodman network - Download static binaries: Composer, fnm, mkcert
- Install the mkcert CA into your system trust store
- Write and start the
lerd-dnsandlerd-nginxPodman Quadlet containers - Enable the
lerd-watcherbackground service (auto-discovers new projects) - Add
~/.local/share/lerd/binto your shell'sPATH
Install from a local build
If you built from source and want to skip the GitHub download:
make build
bash install.sh --local ./build/lerdUpdate
lerd updateFetches the latest release from GitHub, downloads the binary for your architecture, and atomically replaces the running binary. No restart needed.
You can also re-run the installer:
curl -fsSL https://lerd.sh/install.sh | bash -s -- --updatewget -qO- https://lerd.sh/install.sh | bash -s -- --updateUninstall
lerd uninstallStops all containers, disables and removes Quadlet units, removes the watcher service, removes the binary, tears down the lerd podman network (including aardvark-dns runtime state), and cleans up the PATH entry from your shell config.
Four opt-in prompts before finishing:
- Remove all config and data — deletes
~/.config/lerdand~/.local/share/lerd(takes yoursites.yaml, bundled binaries, TLS certs, and all service data with it). - Remove MCP integration — unregisters lerd from Claude Code, Cursor, Windsurf, and Junie at user scope, removes
~/.claude/skills/lerd/,~/.cursor/rules/lerd.mdc, and strips the lerd block from~/.junie/guidelines.md. Also runs across every registered site to clean the same files per-project. - Uninstall mkcert CA — runs
mkcert -uninstallso browsers and OS trust stores stop trusting the lerd CA thatinstalloriginally added. - Purge lerd-built container images — removes
lerd-php*-fpm:local,lerd-custom-*:local, andlerd-dnsmasq:local. Upstream pulled images (mysql/redis/postgres/etc.) are deliberately left alone; they're expensive to re-pull and your database/app data lives in host bind mounts, not inside the images, so nothing is lost by keeping them.
To answer yes to every prompt without interaction:
lerd uninstall --forceCheck prerequisites only
bash install.sh --checkmacOS
Install via the Homebrew tap:
brew install geodro/lerd/lerd
lerd installPodman is installed automatically as a Homebrew dependency. lerd install sets up Podman Machine, DNS, and nginx on first run.
Update:
brew upgrade lerd
lerd installUninstall:
lerd uninstall
brew uninstall lerdWindows (beta)
There is no native Windows build. Lerd runs on Windows through WSL2, where the standard Linux build works unchanged once systemd and rootless Podman are set up. Windows support is beta, it works well for daily development but gets less testing than native Linux or macOS. See the Windows (WSL2) guide for the full walkthrough, including the events_logger Podman tweak and the mkcert root CA export to the Windows trust store.