⚒️Installation
Update packages and install useful tools.
sudo apt update && sudo apt upgrade --yes && \
sudo apt install git build-essential ufw curl jq snapd screen ncdu nano fuse ufw --yes
apt-get update
sudo apt-get install libsnappy-dev libleveldb-dev --yes
Install
go
usingsnap
.
sudo snap install go --classic && \
echo 'export GOPATH="$HOME/go"' >> ~/.profile && \
echo 'export GOBIN="$GOPATH/bin"' >> ~/.profile && \
echo 'export PATH="$GOBIN:$PATH"' >> ~/.profile && \
source ~/.profile && \
go version
snap refresh go --channel="1.23/stable"
Build the binary from source.
git clone https://github.com/provenance-io/provenance
cd provenance
git checkout v1.22.0
make clean
make install
provenanced version
Initialize your node.
provenanced init <node_name> --chain-id pio-mainnet-1
Download genesis and addrbook, set up gas prices.
sed -i -e 's/namespace = "cometbft"/namespace = "provenance"/' $HOME/.provenanced/config/config.toml
wget -O $HOME/.provenanced/config/genesis.json https://server-5.itrocket.net/mainnet/provenance/genesis.json
wget -O $HOME/.provenanced/config/addrbook.json https://server-5.itrocket.net/mainnet/provenance/addrbook.json
sed -i 's|minimum-gas-prices =.*|minimum-gas-prices = "1905nhash"|g' $HOME/.provenanced/config/app.toml
Add seed and persistent peers to
config.toml
.
SEEDS="a280ec7a1b563cb71510723b860ed37d40494308@provenance-mainnet-seed.itrocket.net:57656"
PEERS="b75bb5d0c033b5a8ca24df607a757d09e4f99acd@provenance-mainnet-peer.itrocket.net:57656,[email protected]:28656,[email protected]:26656,[email protected]:36696,[email protected]:26656,[email protected]:26656,[email protected]:46656,[email protected]:46656,[email protected]:26656,[email protected]:20006,[email protected]:42656"
sed -i -e "/^\[p2p\]/,/^\[/{s/^[[:space:]]*seeds *=.*/seeds = \"$SEEDS\"/}" \
-e "/^\[p2p\]/,/^\[/{s/^[[:space:]]*persistent_peers *=.*/persistent_peers = \"$PEERS\"/}" $HOME/.provenanced/config/config.toml
Set up pruning (optional).
sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" $HOME/.provenanced/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $HOME/.provenanced/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"10\"/" $HOME/.provenanced/config/app.toml
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $HOME/.provenanced/config/config.toml
Create service file.
sudo tee /etc/systemd/system/provenanced.service > /dev/null <<EOF
[Unit]
Description=Provenance Daemon
After=network-online.target
[Service]
User=$USER
ExecStart=$(which provenanced) start --home /root/.provenanced
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Enable and start service.
systemctl daemon-reload
systemctl enable provenanced
systemctl restart provenanced
journalctl -u provenanced -f -o cat
Last updated