This guide helps you set up a Umee node - a machine that syncs the entire blockchain, allowing you to interact with the network or become a validator in the future.
sudo apt update && sudo apt upgrade -y
sudo apt install curl git wget htop tmux build-essential jq make lz4 gcc unzip -y
umeed
from source code.
cd $HOME
sudo rm -rf /usr/local/go
wget https://go.dev/dl/go1.23.6.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.23.6.linux-amd64.tar.gz
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source ~/.bash_profile
[ ! -d ~/go/bin ] && mkdir -p ~/go/bin
go version
which go
rm -rf go1.23.6.linux-amd64.tar.gz
cd $HOME
rm -rf umee
git clone https://github.com/umee-network/umee
cd umee
git checkout v6.7.3
make install
umeed version
which umeed
Option 2: Download Prebuilt Binary
wget -O umeed https://snapshots.tienthuattoan.com/mainnet/umee/umeed && mv umeed $HOME/go/bin
umeed version
which umeed
umeed config chain-id umee-1
Initialize the node
umeed init you-node-name --chain-id umee-1
Download Genesis & Addrbook Files
genesis.json
defines the starting state of the chain. addrbook.json
helps your node discover peers.
curl -Ls https://snapshots.tienthuattoan.com/mainnet/umee/genesis.json > $HOME/.umee/config/genesis.json
curl -Ls https://snapshots.tienthuattoan.com/mainnet/umee/addrbook.json > $HOME/.umee/config/addrbook.json
Add seed
Seed nodes help your node find and connect to the network. Itโs like a bootstrap contact list.
sed -i -e "s|^seeds *=.*|seeds = \"e0ad7157fae1963233441ef4902c977b8b32ba0c@umee-rpc.tienthuattoan.com:26656\"|" $HOME/.umee/config/config.toml
Set minimum gas price
This tells your node to accept transactions with at least0.1uumee
gas price. Required for block creation.
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.1uumee\"|" $HOME/.umee/config/app.toml
Pruning & Indexer Settings
Pruning saves disk space by deleting older data. Disabling indexer also reduces storage load.
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
-e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' \
-e 's|^pruning-interval *=.*|pruning-interval = "10"|' \
$HOME/.umee/config/app.toml
sed -i 's/indexer = "kv"/indexer = "null"/g' $HOME/.umee/config/config.toml
wget -O umee_latest.tar.lz4 https://snapshots.tienthuattoan.com/mainnet/umee/umee_latest.tar.lz4 && lz4 -c -d umee_latest.tar.lz4 | tar -x -C $HOME/.umee
sudo tee /etc/systemd/system/umeed.service > /dev/null << EOF
[Unit]
Description=Umee node service
After=network-online.target
[Service]
User=$USER
ExecStart=$(which umeed) start
Restart=on-failure
RestartSec=5
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Start the service and check the logs. This shows real-time logs to help you monitor your nodeโs sync progress and status.
sudo systemctl daemon-reload
sudo systemctl enable umeed
sudo systemctl restart umeed
sudo journalctl -u umeed -f
watch -n 1 "curl -s localhost:26657/status | jq"
You're fully synced when "catching_up": false
, your node is fully synced with the network and ready to use.
{
"latest_block_height": "1234567",
"latest_block_time": "2025-04-06T14:23:00Z",
"catching_up": false
}