Installation

Update systems and 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

sudo rm -rf /usr/local/go
curl -Ls https://go.dev/dl/go1.19.5.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
eval $(echo 'export PATH=$PATH:/usr/local/go/bin' | sudo tee /etc/profile.d/golang.sh)
eval $(echo 'export PATH=$PATH:$HOME/go/bin' | tee -a $HOME/.profile)

Install Node

cd $HOME
rm -rf elys
git clone https://github.com/elys-network/elys elys

cd elys
git checkout v0.9.0

// use make install to install directly or make build to get binary

// make install
make install

// make build
make build
// add application to path
nano ~/.bashrc
// add this to the end of file
export PATH=$PATH:/location/folder/elys/build
// refresh path
source ~/.bashrc



// check version, if it's working then it works
elysd version

Init Chain and Setup

// Init generation
elysd init NodeName --chain-id=elystestnet-1

Download Genesis & Addrbook

// genesis
curl -Ls https://raw.githubusercontent.com/pramonoutomo/cosmos-chain-genesis/main/elys/genesis.json > $HOME/.elys/config/genesis.json 

// addrbook
curl -Ls https://raw.githubusercontent.com/pramonoutomo/cosmos-chain-genesis/main/elys/addrbook.json > $HOME/.elys/config/addrbook.json

Create Services

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

Set indexer to null (save your vps disk space)

// automatic
sed -i -e 's|^indexer *=.*|indexer = "null"|' $HOME/.elys/config/config.toml
sudo systemctl restart elysd


// manual
nano $HOME/.elys/config/config.toml
// search for indexer=kv and change it to null then restart services
sudo systemctl restart elysd

Useful Command

Check Version: elysd version --long

CHECK STATUS BINARY: systemctl status elysd CHECK RUNNING LOGS: journalctl -fu elysd -o cat CHECK LOCAL STATUS: curl -s localhost:26657/status | jq .result.sync_info

Last updated