Running Juno 🚀
You can run a Juno node using several methods:
You can use a snapshot to quickly synchronise your node with the network. Check out the Database Snapshots guide to get started.
Docker container​
1. Get the Docker image​
Juno Docker images can be found at the nethermind/juno repository on Docker Hub. Download the latest image:
docker pull nethermind/juno
You can also build the image locally:
# Clone the Juno repository
git clone https://github.com/NethermindEth/juno
cd juno
# Build the Docker image
docker build -t nethermind/juno:latest .
2. Run the Docker container​
# Prepare the snapshots directory
mkdir -p $HOME/snapshots
# Run the container
docker run -d \
--name juno \
-p 6060:6060 \
-v $HOME/snapshots/juno_mainnet:/snapshots/juno_mainnet \
nethermind/juno \
--http \
--http-port 6060 \
--http-host 0.0.0.0 \
--db-path /snapshots/juno_mainnet
You can view logs from the Docker container using the following command:
docker logs -f juno
Standalone binary​
Download standalone binaries from Juno's GitHub Releases as ZIP archives for Linux (amd64 and arm64) and macOS (amd64). For macOS (arm64) or Windows users, consider running Juno using Docker.
# Prepare the snapshots directory
mkdir -p $HOME/snapshots
# Run the binary
./juno \
--http \
--http-port 6060 \
--http-host 0.0.0.0 \
--db-path $HOME/snapshots/juno_mainnet
Building from source​
You can build the Juno binary or Docker image from the source code to access the latest updates or specific versions.
Prerequisites​
- Golang 1.23 or later
- Rust
- C compiler:
gcc
orclang
- jemalloc
- Ubuntu
- MacOS (Homebrew)
sudo apt-get install -y libjemalloc-dev
brew install jemalloc
1. Clone the repository​
Clone Juno's source code from our GitHub repository:
git clone https://github.com/NethermindEth/juno
cd juno
You can use git tag -l
to view specific version tags.
2. Build the binary or Docker image​
# Build the binary
make juno
# Build the Docker image
docker build -t nethermind/juno:latest .
3. Run the binary​
Locate the standalone binary in the ./build/
directory:
# Prepare the snapshots directory
mkdir -p $HOME/snapshots
# Run the binary
./build/juno \
--http \
--http-port 6060 \
--http-host 0.0.0.0 \
--db-path $HOME/snapshots/juno_mainnet
To learn how to configure Juno, check out the Configuring Juno guide.