A guide to setting up Juno full node and joining mainnet validator set
Official manual: https://docs.junonetwork.io/validators/joining-mainnet
4 Cores 16GB RAM 1TB of storage (SSD or NVME)
On AWS, a t3.xlarge
(4 vCPUs, 16GB Memory) should suffice. We recommend at least 1.5T of storage. We’ll be setting up the node on Ubuntu 20.04
Dependencies
# Update the local package list and install any available upgrades and depencencies
sudo apt-get update && sudo apt upgrade -y
sudo apt-get install make build-essential gcc git jq chrony -y
Install Go
# Download latest binary
wget <https://go.dev/dl/go1.18.linux-amd64.tar.gz>
# Make sure no existing installation
sudo rm -rf /usr/local/go
# Extract binaries over
sudo tar -C /usr/local -xzf go1.18.linux-amd64.tar.gz
# Add bin to the PATH environment variable
export PATH=$PATH:$(go env GOPATH)/bin
# Check version
go version #go version go1.18 linux/amd64
# Clean up
rm go1.18.linux-amd64.tar.gz
Install Junod Binary
git clone <https://github.com/CosmosContracts/juno>
cd juno
# For mainnet validator, we'll need to sync from genesis
git checkout v1.0.0 version
make install
# check to see if it's installed properly
junod version
Env Variables
#.profile
export CHAIN_ID=juno-1 #mainnet
source .profile
MONIKER_NAME="<Your Team Name>"
# Set the base repo URL for mainnet & retrieve peers
CHAIN_REPO="<https://raw.githubusercontent.com/CosmosContracts/mainnet/main/$CHAIN_ID>" && \\
export PEERS="$(curl -s "$CHAIN_REPO/persistent_peers.txt")"
# Minimum gas price
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \\"0.0025ujuno\\"/" ~/.juno/config/app.toml