Skip to content

Install

Website

Twitter

Discord

GitHub

Explorer


Chain ID: osmosis-1 Latest Version: v28.0.0 Custom Port: 153
Section titled “Chain ID: Latest Version: Custom Port: ”
Specify the name of your “MONIKER” (validator) which will be visible in the explorer
Section titled “Specify the name of your “MONIKER” (validator) which will be visible in the explorer”
MONIKER="YOUR_MONIKER_NAME"
sudo apt update && sudo apt upgrade -y
sudo apt install curl build-essential git jq lz4 ncdu btop -y
cd $HOME
version="1.23.3"
wget "https://golang.org/dl/go$version.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$version.linux-amd64.tar.gz"
rm "go$version.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go install cosmossdk.io/tools/cosmovisor/cmd/cosmovisor@latest
cd $HOME
git clone https://github.com/osmosis-labs/osmosis.git
cd osmosis
git checkout v28.0.0
make install
osmosisd version --long | grep -e commit -e version
# Set node configuration
osmosisd config set client chain-id osmosis-1
osmosisd config set client keyring-backend file
osmosisd config set client node tcp://localhost:15357
# Initialize node
osmosisd init $MONIKER --chain-id osmosis-1
# Download genesis and addrbook
curl -Ls https://snapshots.moonbridge.org/mainnet/osmosis/genesis.json > $HOME/.osmosisd/config/genesis.json
curl -Ls https://snapshots.moonbridge.org/mainnet/osmosis/addrbook.json > $HOME/.osmosisd/config/addrbook.json
# Set seeds and peers
SEEDS=""
PEERS=""
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.osmosisd/config/config.toml
# Setting minimum gas price
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.0025uosmo\"|" $HOME/.osmosisd/config/app.toml
# Setting pruning
sed -i -e 's|^pruning *=.*|pruning = "custom"|' $HOME/.osmosisd/config/app.toml
sed -i -e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' $HOME/.osmosisd/config/app.toml
sed -i -e 's|^pruning-interval *=.*|pruning-interval = "19"|' $HOME/.osmosisd/config/app.toml
# Disable indexer
sed -i -e 's|^indexer *=.*|indexer = "null"|' $HOME/.osmosisd/config/config.toml
# Enable Prometheus
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.osmosisd/config/config.toml
# Setting custom ports
sed -i -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:15358\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://0.0.0.0:15357\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:15360\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:15356\"%; s%^external_address = \"\"%external_address = \"$(wget -qO- eth0.me):15356\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":15366\"%" $HOME/.osmosisd/config/config.toml
sed -i -e "s%:1317%:15317%g; s%:8080%:15380%g; s%:9090%:15390%g; s%:9091%:15391%g; s%:8545%:15345%g; s%:8546%:15346%g; s%:6065%:15365%g" $HOME/.osmosisd/config/app.toml
mkdir -p $HOME/.osmosisd/cosmovisor/genesis/bin
mkdir -p $HOME/.osmosisd/cosmovisor/upgrades
cp $HOME/go/bin/osmosisd $HOME/.osmosisd/cosmovisor/genesis/bin/
sudo tee /etc/systemd/system/osmosisd.service > /dev/null << EOF
[Unit]
Description=Osmosis Node
After=network-online.target
[Service]
User=$USER
ExecStart=$(which cosmovisor) run start
Restart=always
RestartSec=5
LimitNOFILE=65535
Environment="DAEMON_NAME=osmosisd"
Environment="DAEMON_HOME=$HOME/.osmosisd"
Environment="UNSAFE_SKIP_BACKUP=true"
Environment="DAEMON_ALLOW_DOWNLOAD_BINARIES=false"
Environment="DAEMON_RESTART_AFTER_UPGRADE=true"
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable osmosisd
curl -o - -L https://snapshots.moonbridge.org/mainnet/osmosis/snapshot_latest.tar.lz4 | lz4 -dc - | tar -x -C $HOME/.osmosisd
[[ -f $HOME/.osmosisd/data/upgrade-info.json ]] && cp $HOME/.osmosisd/data/upgrade-info.json $HOME/.osmosisd/cosmovisor/genesis/upgrade-info.json
sudo systemctl start osmosisd && sudo journalctl -u osmosisd -f --no-hostname -o cat
osmosisd keys add wallet
osmosisd q bank balances $(osmosisd keys show wallet -a)
osmosisd tx staking create-validator \
--amount 1000000uosmo \
--pubkey $(osmosisd tendermint show-validator) \
--moniker "YOUR_MONIKER_NAME" \
--identity "YOUR_KEYBASE_ID" \
--details "YOUR_DETAILS" \
--website "YOUR_WEBSITE_URL" \
--security-contact "YOUR_EMAIL_ADDRESS" \
--chain-id osmosis-1 \
--commission-rate 0.05 \
--commission-max-rate 0.20 \
--commission-max-change-rate 0.05 \
--min-self-delegation 1 \
--from wallet \
--gas-adjustment 1.4 \
--gas auto \
--gas-prices 0.0025uosmo \
-y
sudo systemctl stop osmosisd
sudo systemctl disable osmosisd
sudo rm -rf /etc/systemd/system/osmosisd.service
sudo systemctl daemon-reload
sudo rm -f $(which osmosisd)
sudo rm -rf $HOME/.osmosisd
sudo rm -rf $HOME/osmosis