Welcome to the Quai Network Validator Node Setup Guide! This document will walk you through the steps to set up and run a validator node on the Quai Network. Please follow each step carefully to ensure a successful setup. 🛠️
Before you begin, ensure you have the following:
Operating System: Ubuntu 20.04 or newer 🐧
Hardware Requirements:
Memory: 8 GB RAM
CPU: 4 cores
Disk: 1 TB SSD Storage
Bandwidth: 1 Gbps for Download/1 Gbps for Upload
Software Dependencies:
Docker: For containerization 🐳
Git: For cloning repositories 🧑💻
Update your package list and install the necessary dependencies:
sudo apt update
sudo apt install -y docker.io git
Clone the official Quai Network repository:
git clone https://github.com/quai-network/quai.git
cd quai
Build the Quai node using Docker:
docker build -t quai-node .
Create a directory for your node's configuration and data:
mkdir -p ~/.quai/config
Initialize your node with a custom moniker (replace <YOUR_MONIKER_NAME> with your chosen name):
docker run --rm -v ~/.quai/config:/root/.quai quai-node init --chain-id <CHAIN_ID> --moniker <YOUR_MONIKER_NAME>
Note: Replace <CHAIN_ID> with the chain ID of the Quai Network you're connecting to. For example, quai init myValidator --chain-id quai-1.
Download the genesis file and TOML configuration files:
curl -o ~/.quai/config/genesis.json https://raw.githubusercontent.com/quai-network/node-config/main/networks/mainnet/genesis/genesis.json
curl -o ~/.quai/config/app.toml https://raw.githubusercontent.com/quai-network/node-config/main/networks/mainnet/config/app.toml
curl -o ~/.quai/config/config.toml https://raw.githubusercontent.com/quai-network/node-config/main/networks/mainnet/config/config.toml
Edit the config.toml file to set seed node addresses:
# In config.toml
seeds = "<SEED_NODE_ADDRESSES>"
Replace <SEED_NODE_ADDRESSES> with the actual seed node addresses provided by the Quai Network.
Start your Quai node:
docker run -d -v ~/.quai/config:/root/.quai quai-node start
Check the status of your node:
docker logs -f <CONTAINER_ID>
Replace <CONTAINER_ID> with your node's container ID. You can find it using:
To participate in the consensus, delegate some stake to your validator. Run the following command:
quai-cli tx staking delegate \
$(quai-cli keys show <YOUR_VALIDATOR_KEY_NAME> --bech val -a) \
1000000uqai \
--from <YOUR_VALIDATOR_KEY_NAME> \
--chain-id <CHAIN_ID> \
--gas auto --gas-prices 0.01uqai --gas-adjustment 1.5
Replace <YOUR_VALIDATOR_KEY_NAME> with your validator's key name and <CHAIN_ID> with the Quai Network's chain ID.
For support and community engagement, visit the Quai Network Discord and explore the Quai Network Documentation.
Disclaimer: This guide provides a general overview. For detailed instructions and the latest updates, refer to the Quai Network Validator Node Documentation.

