Skip to main content

Installation

Get started with MEV-Boost installation with this guide. Whether you are looking to install it on a machine with the beacon client or multiple beacon clients, this guide will assist you in setting it up smoothly.

Prerequisites​

  • For a comprehensive guide on preparing for the merge, refer to Rémy Roy's guide.
  • Ensure you have Go 1.18+ installed for source-based installations.

Installation Methods​

Using Binaries​

For convenience, each release includes binaries suitable for Linux, Windows, and macOS (both amd and arm). Find the latest releases here.

From Source​

Build and install with go install​

The easiest way to build and install MEV-Boost from sources is to use go install. You can simply execute the go install command as shown below:

go install github.com/flashbots/mev-boost@latest
mev-boost -help

This would install the latest version of MEV-Boost in your $GOPATH/bin directory. You can then run the mev-boost command from anywhere in your terminal.

If you want to install a specific version, you can use the @ syntax:

go install github.com/flashbots/mev-boost@VERSION

Simply look up the specific version you want to install in the releases page.

Clone and Build​

You can also clone the repository and build the software yourself without using go install.

  1. Clone the repository:

    git clone https://github.com/flashbots/mev-boost.git
    cd mev-boost
  2. (Optional) To build a specific release, refer to the available releases and checkout the desired tag:

    git checkout tags/YOUR_VERSION
  3. Build the software:

    make build
  4. If you experience issues, use the portable build:

    make build-portable
  5. Verify your installation:

    ./mev-boost -help

From Docker Image​

Flashbots provides maintained Docker images for MEV-Boost.

  1. Install Docker Engine.

  2. Pull the latest MEV-Boost image:

    docker pull flashbots/mev-boost:latest

    Or pull the portable version:

    docker pull flashbots/mev-boost:latest-portable
  3. Run the Docker image:

    docker run flashbots/mev-boost -help

Systemd Configuration​

To keep MEV-Boost running as a service, configure systemd by creating the systemd config file /etc/systemd/system/mev-boost.service.

Below is an example of a config file:

[Unit]
Description=mev-boost
Wants=network-online.target
After=network-online.target

[Service]
User=mev-boost
Group=mev-boost
WorkingDirectory=/home/mev-boost
Type=simple
Restart=always
RestartSec=5
ExecStart=/home/mev-boost/bin/mev-boost \
-mainnet \
-relay-check \
-relays YOUR_RELAY_CHOICE

[Install]
WantedBy=multi-user.target

Troubleshooting​

If you encounter an error: "SIGILL: illegal instruction", you'll need to use the portable build.

There are three ways to install the portable build:

  1. Use the portable Docker image.

  2. Build the portable version from source:

    make build-portable
  3. Using go install:

    CGO_CFLAGS="-O -D__BLST_PORTABLE__" go install github.com/flashbots/mev-boost@latest