Earthly 0.7

Alternative installation

Alternative Installation

This page outlines alternative installation instructions for the earthly build tool. The main instructions that most users need are available on the installation instructions page.


Install earthly

Download the binary relevant to your platform from the releases page, rename it to earthly and place it in your bin.
To initialize the installation, including adding auto-completion for your shell, run
sudo earthly bootstrap --with-autocomplete
and then restart your shell.


For instructions on how to install earthly for CI use, see the CI integration guide.

Checksum Verification

You may optionally verify the checksum of the downloaded binaries, by performing the following steps:
  1. 1.
    Download our public key:
  2. 2.
    Verify the public key was correctly downloaded:
    md5sum earthly.pgp
    which should produce:
    8f455671610b15ee21be31e9f16b7bb6 earthly.pgp
  3. 3.
    Import our key:
    gpg --import earthly.pgp
  4. 4.
    Trust our key:
    echo -e "5\ny\n" | gpg --command-fd 0 --expert --edit-key 5816B2213DD1CEB61FC952BAB1185ECA33F8EB64 trust
  5. 5.
    Download the released checksum.asc file:
    You can manually download it from the the releases page.
    The latest version can be fetched from the command line with:
  6. 6.
    Verify the checksum.asc file was released correctly:
    gpg --verify checksum.asc && gpg --verify --output checksum checksum.asc
gpg is dangerous
Don't be tempted to remove the initial gpg --verify checksum.asc command; gpg will still output the checksum file even if the signature verification fails.
  1. 7.
    Verify the earthly binary checksum matches
    sha256sum --check checksum --ignore-missing
    This should display an entry similar to:
    earthly-linux-amd64: OK

Installing from Earthly repositories (beta)

Our rpm and deb repositories are currently in Beta stage.
Earthly can be installed for Debian and RedHat based Linux distributions via the Earthly deb and rpm repositories.
All of our binaries are signed with our PGP key; which has the fingerprint:
5816 B221 3DD1 CEB6 1FC9 52BA B118 5ECA 33F8 EB64
Debian-based repositories (including Ubuntu)
Debian-based Linux users (e.g. Debian, Ubuntu, Mint, etc) can use our apt repo to install Earthly.
Before installing Earthly, you must first set up the Earthly apt repo.
  1. 1.
    Update apt and install required tools to support https-based apt repos:
    sudo apt-get update
    sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
  2. 2.
    Download Earthly's GPG key:
    curl -fsSL | sudo gpg --dearmor -o /usr/share/keyrings/earthly-archive-keyring.gpg
  3. 3.
    Setup the stable repo:
    echo \
    "deb [arch=amd64 signed-by=/usr/share/keyrings/earthly-archive-keyring.gpg] \
    stable main" | sudo tee /etc/apt/sources.list.d/earthly.list > /dev/null
  4. 4.
    Install Earthly:
    sudo apt-get update
    sudo apt-get install earthly
Fedora repositories
Fedora users can use our rpm repo to install Earthly.
  1. 1.
    Install plugins required to manage DNF repositories:
    sudo dnf -y install dnf-plugins-core
  2. 2.
    Add the Earthly repo to your system:
    sudo dnf config-manager \
    --add-repo \
  3. 3.
    Install Earthly:
    sudo dnf install earthly
CentOS repositories
CentOS users can use our rpm repo to install Earthly.
  1. 1.
    Install utils required to manage yum repositories:
    sudo yum install -y yum-utils
  2. 2.
    Add the Earthly repo to your system:
    sudo yum-config-manager \
    --add-repo \
  3. 3.
    Install Earthly:
    sudo yum install earthly

Native Windows

Our native Windows release is currently in the Experimental stage.
  • The release ships with known issues. Many things work, but some don't.
  • Check the GitHub tracking issue for any known problems.
  • Give us feedback on Slack.
To install the Windows release, simply download the binary (or from our release page); and ensure it is within your PATH.
To add earthly.exe to your PATH environment variable:
  1. 1.
    Search and select: System (Control Panel)
  2. 2.
    Click the Advanced system settings link.
  3. 3.
    Click Environment Variables. In the "System Variables" section, select the PATH environment variable and click Edit.
    • If the PATH environment variable does not exist, click New.
  4. 4.
    In the Edit window, specify the value of the PATH environment variable, and Click OK.
  5. 5.
    Close and reopen any existing terminal windows, so they will pick up the new PATH.
If you are going to mostly be working from a WSL2 prompt in Windows, you might want to consider following the Linux instructions for installation. This will help prevent any cross-subsystem file transfers and keep your builds fast. Note that the "original" WSL is unsupported.

macOS Binary

While installing earthly via Homebrew is the recommended approach, you can also download a binary directly. This may be useful when using earthly on a Mac in CI scenarios.
When using a precompiled binary, you may need to add an exception to Gatekeeper. Follow Apple's instructions to add this exception.

Installing from source

To install from source, see the contributing page.


If you use SSH-based git authentication, then your git credentials will just work with Earthly. Read more about git auth.
For a full list of configuration options, see the Configuration reference

Verify installation

To verify that the installation works correctly, you can issue a simple build of an existing hello-world project
You should see the output | --> RUN [echo 'Hello, world!'] | Hello, world! | Target built successfully
=========================== SUCCESS ===========================


To remove earthly, run the following commands:

macOS users

brew uninstall earthly
rm -rf ~/.earthly
docker rm --force earthly-buildkitd
docker volume rm --force earthly-cache

Linux and WSL2 users

rm /usr/local/bin/earthly
rm /usr/share/bash-completion/completions/earthly
rm /usr/local/share/zsh/site-functions/_earthly
rm -rf ~/.earthly
docker rm --force earthly-buildkitd
docker volume rm --force earthly-cache