Install

Recommended Hardware: 8 Cores, 16GB RAM, 250GB of storage (NVME)

Chain ID: dymension_1100-1 | Latest Version Tag: v3.2.0

Dependencies Installation

Update system and install build tools

sudo apt update && sudo apt upgrade -y
sudo apt install curl git wget htop tmux build-essential jq make lz4 gcc unzip -y

Install GO

cd $HOME
ver="1.24.2" && \
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" && \
sudo rm -rf /usr/local/go && \
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" && \
rm "go$ver.linux-amd64.tar.gz" && \
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile && \
source $HOME/.bash_profile && \
go version

Manual installation

Come up with the name of your node and replace it instead <your_moniker>

MONIKER=<your_moniker>

Download binary files

cd $HOME
git clone https://github.com/dymensionxyz/dymension.git
cd dymension
git checkout v3.2.0
make install

Initialize the node

# config and init app
dymd config chain-id dymension_1100-1
dymd config keyring-backend file
dymd config node tcp://localhost:26657

dymd init $MONIKER --chain-id dymension_1100-1

Set node configuration

# download genesis and addrbook
curl -Ls https://snapshots.kjnodes.com/dymension/genesis.json > $HOME/.dymension/config/genesis.json
curl -Ls https://snapshots.kjnodes.com/dymension/addrbook.json > $HOME/.dymension/config/addrbook.json

# Add seeds
sed -i -e "s|^seeds *=.*|seeds = \"400f3d9e30b69e78a7fb891f60d76fa3c73f0ecc@dymension.rpc.kjnodes.com:14659\"|" $HOME/.dymension/config/config.toml

# Set minimum gas price
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"20000000000adym\"|" $HOME/.dymension/config/app.toml

# Set pruning
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 = "19"|' \
  $HOME/.dymension/config/app.toml

Create a service

sudo tee /etc/systemd/system/dymd.service > /dev/null <<EOF
[Unit]
Description=dymd
After=network-online.target

[Service]
User=$USER
ExecStart=$(which dymd) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable dymd

Download latest chain snapshot

curl -L https://snapshots.kjnodes.com/dymension/snapshot_latest.tar.lz4 | tar -Ilz4 -xf - -C $HOME/.dymension

Start service and check the logs

sudo systemctl start dymd && sudo journalctl -u dymd -f -o cat

Create wallet

# to create a new wallet, use the following command. don’t forget to save the mnemonic
dymd keys add wallet

# to restore exexuting wallet, use the following command
dymd keys add wallet --recover

# list all keys
dymd keys list

# before creating a validator, you need to fund your wallet and check balance
dymd q bank balances $(dymd keys show wallet -a)

Create validator

dymd tx staking create-validator \
--commission-rate 0.1 \
--commission-max-rate 0.2 \
--commission-max-change-rate 0.2 \
--min-self-delegation "1000000" \
--amount 1000000000000000000adym \
--pubkey $(dymd tendermint show-validator) \
--from <wallet> \
--gas 350000 \
--fees 7000000000000000adym \
--moniker="YOUR_MONIKER_NAME" \
--chain-id="dymension_1100-1" \
--identity="YOUR_KEYBASE_ID" \
--website="YOUR_WEBSITE_URL" \
--details="YOUR_DETAILS" -y

Last updated