-
-
Save chinezupwnz/b79acd5d0c01ffdacb8244ad462dabe0 to your computer and use it in GitHub Desktop.
bash script for installing go and gaia cosmoshub-1 on Ubuntu
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Upgrade the system and install go | |
sudo apt update | |
sudo apt upgrade -y | |
sudo apt install gcc git make -y | |
sudo snap install --classic go | |
sudo mkdir -p /opt/go/bin | |
# Export environment variables | |
export GOPATH=$HOME/go | |
export PATH=$GOPATH/bin:$PATH | |
# Create a system user for running the service | |
sudo useradd -m -d /opt/gaiad --system --shell /usr/sbin/nologin gaiad | |
sudo -u gaiad mkdir -p /opt/gaiad/config | |
# Get Cosmos SDK and build binaries | |
go get github.com/cosmos/cosmos-sdk | |
cd $HOME/go/src/github.com/cosmos/cosmos-sdk | |
git fetch --all | |
git checkout -f v0.34.1 | |
make install | |
cd | |
# Copy the binaries to /opt/go/bin/ | |
sudo cp $HOME/go/bin/gaia* /opt/go/bin/ | |
# Create systemd unit file | |
echo "[Unit] | |
Description=Cosmos Gaia Node | |
After=network-online.target | |
[Service] | |
User=gaiad | |
ExecStart=/opt/go/bin/gaiad start --home=/opt/gaiad/ | |
Restart=always | |
RestartSec=3 | |
LimitNOFILE=4096 | |
[Install] | |
WantedBy=multi-user.target" > gaiad.service | |
sudo mv gaiad.service /etc/systemd/system/ | |
sudo systemctl enable gaiad.service | |
# Create the config skeleton as user gaiad | |
sudo -u gaiad /opt/go/bin/gaiad unsafe-reset-all --home=/opt/gaiad | |
echo "You can copy the genesis.json file to /opt/gaiad/config and edit the /opt/gaiad/config/config.toml." | |
echo "Run 'sudo service gaiad start' to start the service." | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment