Install
Recommended Hardware: 4 Cores, 8GB RAM, 150GB of storage (NVME)
Chain ID: prysm-devnet-1 | Latest Version Tag: v0.1.0-devnet
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 -yInstall 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 versionManual installation
Come up with the name of your node and replace it instead <your_moniker>
MONIKER=<your_moniker>Download binary files
cd $HOME
rm -rf prysm
git clone https://github.com/kleomedes/prysm prysm
cd prysm
git checkout v0.1.0-devnet
make install Initialize the node
# config and init app
prysmd config keyring-backend os
prysmd config chain-id prysm-devnet-1
prysmd config node tcp://localhost:26657
prysmd init $MONIKER --chain-id prysm-devnet-1Set node configuration
# download genesis and addrbook
wget -O $HOME/.prysm/config/genesis.json https://server-5.itrocket.net/testnet/prysm/genesis.json
wget -O $HOME/.prysm/config/addrbook.json https://server-5.itrocket.net/testnet/prysm/addrbook.json
# set seeds and peers
SEEDS="1b5b6a532e24c91d1bc4491a6b989581f5314ea5@prysm-testnet-seed.itrocket.net:25656"
PEERS="ff15df83487e4aa8d2819452063f336269958d09@prysm-testnet-peer.itrocket.net:25657,e7fa94e3cb848fddf632909a39412d1122a87e88@[2001:41d0:2:80a5::1]:14256,[email protected]:15656,[email protected]:18656,[email protected]:46656,[email protected]:26916,[email protected]:3020,[email protected]:15656,[email protected]:44656,[email protected]:14356,[email protected]:34656"
sed -i -e "/^\[p2p\]/,/^\[/{s/^[[:space:]]*seeds *=.*/seeds = \"$SEEDS\"/}" \
-e "/^\[p2p\]/,/^\[/{s/^[[:space:]]*persistent_peers *=.*/persistent_peers = \"$PEERS\"/}" $HOME/.prysm/config/config.toml
# set minimum gas price, enable prometheus and disable indexing
sed -i 's|minimum-gas-prices =.*|minimum-gas-prices = "0.0uprysm"|g' $HOME/.prysm/config/app.toml
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.prysm/config/config.toml
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $HOME/.prysm/config/config.toml
# Set pruning
sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" $HOME/.prysm/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $HOME/.prysm/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"19\"/" $HOME/.prysm/config/app.tomlCreate a service
# Download and install Cosmovisor
sudo tee /etc/systemd/system/prysmd.service > /dev/null <<EOF
[Unit]
Description=Prysm node
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/.prysm
ExecStart=$(which prysmd) start --home $HOME/.prysm
Restart=on-failure
RestartSec=5
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable prysmdStart service and check the logs
sudo systemctl restart prysmd && sudo journalctl -u prysmd -f --no-hostname -o catCreate wallet
# to create a new wallet, use the following command. don’t forget to save the mnemonic
prysmd keys add wallet
# to restore exexuting wallet, use the following command
prysmd keys add wallet --recover
# list all keys
prysmd keys list
# before creating a validator, you need to fund your wallet and check balance
prysmd q bank balances $(prysmd keys show wallet -a)
Create validator
gcd $HOME
# Create validator.json file
echo "{\"pubkey\":{\"@type\":\"/cosmos.crypto.ed25519.PubKey\",\"key\":\"$(prysmd comet show-validator | grep -Po '\"key\":\s*\"\K[^"]*')\"},
\"amount\": \"1000000uprysm\",
\"moniker\": \"test\",
\"identity\": \"\",
\"website\": \"\",
\"security\": \"\",
\"details\": \"\",
\"commission-rate\": \"0.1\",
\"commission-max-rate\": \"0.2\",
\"commission-max-change-rate\": \"0.01\",
\"min-self-delegation\": \"1\"
}" > validator.json
# Create a validator using the JSON configuration
prysmd tx staking create-validator validator.json \
--from wallet \
--chain-id prysm-devnet-1 \
--gas auto --gas-adjustment 1.5 --fees 6000uprysmLast updated