Mainnet

Chain ID: stride-1 | Node Version: v18.0.0

Node Installation Guide

Update system and install build tools

sudo apt update

sudo apt-get install git curl build-essential make jq gcc snapd chrony lz4 tmux unzip bc -y

Install Go

rm -rf $HOME/go
sudo rm -rf /usr/local/go
cd $HOME
curl https://dl.google.com/go/go1.21.5.linux-amd64.tar.gz | sudo tar -C/usr/local -zxvf -
cat <<'EOF' >>$HOME/.profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source $HOME/.profile
go version

Install Node

cd $HOME

rm -rf stride

git clone https://github.com/Stride-Labs/stride.git

cd stride

git checkout v18.0.0

make install

strided version

Initialize Node

Replace NodeName with your own moniker.

strided init NodeName --chain-id=stride-1

Download Genesis

curl -Ls https://ss.stride.nodestake.org/genesis.json > $HOME/.stride/config/genesis.json 

Download addrbook

curl -Ls https://ss.stride.nodestake.org/addrbook.json > $HOME/.stride/config/addrbook.json

Create Service

sudo tee /etc/systemd/system/strided.service > /dev/null <<EOF
[Unit]
Description=strided Daemon
After=network-online.target
[Service]
User=$USER
ExecStart=$(which strided) start
Restart=always
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable strided

Download Snapshot(optional)

SNAP_NAME=$(curl -s https://ss.stride.nodestake.org/ | egrep -o ">20.*\.tar.lz4" | tr -d ">")

curl -o - -L https://ss.stride.nodestake.org/${SNAP_NAME}  | lz4 -c -d - | tar -x -C $HOME/.stride

Launch Node

sudo systemctl restart strided
journalctl -u strided -f

If you have any questions, please reach out to our Discord

 

https://rpc.stride.nodestake.org

 

https://api.stride.nodestake.org

 

https://grpc.stride.nodestake.org:443

https://ss.stride.nodestake.org/genesis.json

Download Genesis File

curl -Ls https://ss.stride.nodestake.org/genesis.json > $HOME/.stride/config/genesis.json 

https://ss.stride.nodestake.org/addrbook.json

Download Addrbook

curl -Ls https://ss.stride.nodestake.org/addrbook.json > $HOME/.stride/config/addrbook.json 

Restart Node

sudo systemctl restart strided
journalctl -u strided -f

54774742423beb62588449d5c74f1a8f9b49c28c@rpc.stride.nodestake.org:666

Set Peers

seed=54774742423beb62588449d5c74f1a8f9b49c28c@rpc.stride.nodestake.org:666
sed -i.bak -e "s/^seed *=.*/seed = \"$seed\"/" ~/.stride/config/config.toml

Restart Node

sudo systemctl restart strided
journalctl -u strided -f

Set Peers

peers=$(curl -s https://ss.stride.nodestake.org/peers.txt)
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" ~/.stride/config/config.toml

Restart Node

sudo systemctl restart strided
journalctl -u strided -f

Stop Node And Reset

sudo systemctl stop strided

strided tendermint unsafe-reset-all --home ~/.stride/ --keep-addr-book

Configure State Sync

SNAP_RPC="https://rpc.stride.nodestake.org:443"

LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \

BLOCK_HEIGHT=$((LATEST_HEIGHT - 1000)); \

TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)

echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH

 

sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \

s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$SNAP_RPC,$SNAP_RPC\"| ; \

s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \

s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"| ; \

s|^(seeds[[:space:]]+=[[:space:]]+).*$|\1\"\"|" ~/.stride/config/config.toml

more ~/.stride/config/config.toml | grep 'rpc_servers'

more ~/.stride/config/config.toml | grep 'trust_height'

more ~/.stride/config/config.toml | grep 'trust_hash'

Restart Node

sudo systemctl restart strided
journalctl -u strided -f

Install lz4

sudo apt update

sudo apt-get install snapd lz4 -y

Off State Sync

sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1false|" ~/.stride/config/config.toml

Stop Node and Reset Date

sudo systemctl stop strided

cp $HOME/.stride/data/priv_validator_state.json $HOME/.stride/priv_validator_state.json.backup

rm -rf ~/.stride/data

strided tendermint unsafe-reset-all --home ~/.stride/ --keep-addr-book

Download Snapshot

SNAP_NAME=$(curl -s https://ss.stride.nodestake.org/ | egrep -o ">20.*\.tar.lz4" | tr -d ">")

curl -o - -L https://ss.stride.nodestake.org/${SNAP_NAME}  | lz4 -c -d - | tar -x -C $HOME/.stride

mv $HOME/.stride/priv_validator_state.json.backup $HOME/.stride/data/priv_validator_state.json

Restart Node

sudo systemctl restart strided
journalctl -u strided -f

If you have any questions, please reach out to our Discord

Testnet

Chain ID: temp-1 | Node Version: temp1.0.0

 

https://explorer.nodestake.top/temp-testnet

 

Node Installation Guide

Update system and install build tools

sudo apt update

sudo apt-get install git curl build-essential make jq gcc snapd chrony lz4 tmux unzip bc -y

Install Go

rm -rf $HOME/go
sudo rm -rf /usr/local/go
cd $HOME
curl https://dl.google.com/go/go1.19.5.linux-amd64.tar.gz | sudo tar -C/usr/local -zxvf -
cat <<'EOF' >>$HOME/.profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source $HOME/.profile
go version

Install Node

cd $HOME
rm -rf evmos
git clone https://github.com/evmos/evmos.git
cd evmos
git checkout v9.1.0
make install
evmosd version

Initialize Node

Replace NodeName with your own moniker.

evmosd init NodeName --chain-id=altruistic-1

Download Genesis

curl -Ls https://ss-t.temp.nodestake.top/genesis.json > $HOME/.evmosd/config/genesis.json 

Download addrbook

curl -Ls https://ss-t.temp.nodestake.top/addrbook.json > $HOME/.evmosd/config/addrbook.json

Create Service

sudo tee /etc/systemd/system/evmosd.service > /dev/null <<EOF
[Unit]
Description=evmosd Daemon
After=network-online.target
[Service]
User=$USER
ExecStart=$(which evmosd) start
Restart=always
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable evmosd

Download Snapshot(optional)

SNAP_NAME=$(curl -s https://ss-t.temp.nodestake.top/ | egrep -o ">20.*\.tar.lz4" | tr -d ">")

curl -o - -L https://ss-t.temp.nodestake.top/${SNAP_NAME}  | lz4 -c -d - | tar -x -C $HOME/.temp

Launch Node

sudo systemctl restart evmosd
journalctl -u evmosd -f

If you have any questions, please reach out to our Discord

 

https://rpc-t.temp.nodestake.top

 

https://api-t.temp.nodestake.top

 

https://grpc-t.temp.nodestake.top

Chain Name: TEMP
RPC: https://jsonrpc-t.temp.nodestake.top/
Chain ID: 0000
Symbol: TEMP
Explorer: 

https://ss-t.temp.nodestake.top/genesis.json

Download Genesis File

curl -Ls https://ss-t.temp.nodestake.top/genesis.json > $HOME/.evmosd/config/genesis.json 

https://ss-t.temp.nodestake.top/addrbook.json

Download Addrbook

curl -Ls https://ss-t.temp.nodestake.top/addrbook.json > $HOME/.evmosd/config/addrbook.json 

Restart Node

sudo systemctl restart evmosd
journalctl -u evmosd -f

Set Peers

peers=$(curl -s https://ss-t.temp.nodestake.top/peers.txt)
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" ~/.evmosd/config/config.toml

Restart Node

sudo systemctl restart evmosd
journalctl -u evmosd -f

Stop Node And Reset

sudo systemctl stop evmosd

evmosd unsafe-reset-all --home ~/.evmosd/

evmosd tendermint unsafe-reset-all --home ~/.evmosd/ --keep-addr-book

Configure State Sync

SNAP_RPC="https://rpc-t.evmos.nodestake.top:443"

LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \

BLOCK_HEIGHT=$((LATEST_HEIGHT - 1000)); \

TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)

echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH

 

sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \

s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$SNAP_RPC,$SNAP_RPC\"| ; \

s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \

s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"| ; \

s|^(seeds[[:space:]]+=[[:space:]]+).*$|\1\"\"|" ~/.evmosd/config/config.toml

more ~/.evmosd/config/config.toml | grep 'rpc_servers'

more ~/.evmosd/config/config.toml | grep 'trust_height'

more ~/.evmosd/config/config.toml | grep 'trust_hash'

Download Wasm

curl -L https://ss-t.evmos.nodestake.top/wasm.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.evmosd

Restart Node

sudo systemctl restart evmosd
journalctl -u evmosd -f

We make the node snapshot every 6h

Install lz4

sudo apt update

sudo apt-get install snapd lz4 -y

Off State Sync

sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1false|" ~/.evmosd/config/config.toml

Stop Node and Reset Date

sudo systemctl stop evmosd

cp $HOME/.evmosd/data/priv_validator_state.json $HOME/.evmosd/priv_validator_state.json.backup

rm -rf ~/.evmosd/data

evmosd tendermint unsafe-reset-all --home ~/.evmosd/ --keep-addr-book

evmosd unsafe-reset-all --home ~/.evmosd/

Download Snapshot

SNAP_NAME=$(curl -s https://ss-t.evmos.nodestake.top/ | egrep -o ">20.*\.tar.lz4" | tr -d ">")

curl -o - -L https://ss-t.evmos.nodestake.top/${SNAP_NAME}  | lz4 -c -d - | tar -x -C $HOME/.evmosd

mv $HOME/.evmosd/priv_validator_state.json.backup $HOME/.evmosd/data/priv_validator_state.json

Restart Node

sudo systemctl restart evmosd
journalctl -u evmosd -f

If you have any questions, please reach out to our Discord