Node Docs MAYANodesFullnode Installation Guide Chain ID: mayachain-mainnet-v1 | Current Node Version: v1.111.0
Install Go and other requirements
Install Go
We will use Go v1.22.0
as an example here. The code below also cleanly removes any previous Go installation.
Copy sudo rm -rvf /usr/local/go/
wget https://golang.org/dl/go1.22.2.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.22.2.linux-amd64.tar.gz
rm go1.22.2.linux-amd64.tar.gz
Configure Go
Unless you want to configure in a non-standard way, then set these in the ~/.bash_profile
for bash and ~/.zshrc
for zsh.
Copy export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
Install dependencies protobuf-compiler
Copy apt-get update
apt-get install -y git \
make \
protobuf-compiler \
curl \
wget \
jq \
build-essential \
musl-tools \
linux-headers-generic
Install docker and docker compose plugin
https://docs.docker.com/engine/install/
Install Node
Install the current version of node binary.
Copy git clone https://gitlab.com/mayachain/mayanode
cd mayanode
git checkout <latest version tag>
make protob
Install binary
Copy TAG=mainnet NET=mainnet make install
Run Node
Copy MAYA_COSMOS_TELEMETRY_ENABLED=true CHAIN_ID=mayachain-mainnet-v1 NET=mainnet SEEDS=15.156.45.237,18.217.85.10 bash ./build/scripts/fullnode.sh
Create Service File
Create a mayanode.service
file in the /etc/systemd/system
folder with the following code snippet. Make sure to replace USER
with your Linux username. You need sudo privilege to do this step.
Copy [Unit]
Description="Mayanode"
After=network-online.target
[Service]
User=USER
ExecStartPre=/home/USER/.go/bin/mayanode render-config
ExecStart=/home/USER/.go/bin/mayanode start
Restart=always
RestartSec=3
LimitNOFILE=4096
Environment="MAYA_COSMOS_TELEMETRY_ENABLED=true"
Environment="CHAIN_ID=mayachain-mainnet-v1"
Environment="NET=mainnet"
Environment="SIGNER_NAME=mayachain"
Environment="SIGNER_PASSWD=password"
[Install]
WantedBy=multi-user.target
Download Snapshot
Copy mkdir -p ~/.mayanode/data
aws s3 cp --recursive s3://public-snapshots-mayanode/full/<snapshot height> ~/.mayanode/data
Start Node Service
Copy # Enable service
sudo systemctl enable mayanode.service
# Start service
sudo systemctl start mayanode
# Check logs
sudo journalctl -feu mayanode
Other Considerations
This installation guide is the bare minimum to get a node started. You should consider the following as you become a more experienced node operator.
Configure firewall to close most ports while only leaving the p2p port (typically 27146) open
Use custom ports for each node so you can run multiple nodes on the same server
If you find a bug in this installation guide, please reach out to our Discord Server and let us know.
Last updated 7 months ago