Q Chain


Good to know: You need a minimum 8 core, 16gb ram and 120gb NVME disk to make it running on your machine . Also user "root" are needed. using non root user may lead to error!

// update dependencies
sudo apt update
sudo apt upgrade
// Set vars for password , change the password to anything
// export vars
echo "export PASSWORD=$PASSWORD" $HOME/.bash_profile
source $HOME/.bash_profile
// install docker
sudo apt-get update && sudo apt install jq && sudo apt install apt-transport-https ca-certificates curl software-properties-common -y && curl -fsSL | sudo apt-key add - && sudo add-apt-repository "deb [arch=amd64] focal stable" && sudo apt-get install docker-ce docker-ce-cli docker-compose-plugin && sudo apt-get install docker-compose-plugin
sudo apt-get install docker-ce docker-ce-cli docker-compose
// download the application binary
git clone
cd mainnet-public-tools/validator/

Create new wallet account for your nodes or use existing

// This for creating new wallet for your nodes
// create new keystore folder and create pwd file with your password
mkdir keystore
cd keystore
echo "$PASSWORD" >> pwd.txt
// generate new wallet
cd ..
docker run --entrypoint="" --rm -v $PWD:/data -it qblockchain/q-client:1.2.3 geth account new --datadir=/data --password=/data/keystore/pwd.txt

// OR you can also use your own wallet
// set your password on keystore folder
mkdir keystore
cd keystore
echo "$PASSWORD" >> pwd.txt
// then upload your UTC wallet file into folder: mainnet-public-tools/validator/keystore

if you only have private key, check here for tutorial on how you can get (generate) your UTC wallet file using privatekey.

And you'll got some data on your screen, SAVE THE OUTPUT DATA! also use any sftp to save the json file generated on the keystore folder

Setup ENV file

// copy env filae from example
cp .env.example .env
// change your Q wallet address without 0x, and change your nodes ip and port

Create a ticket on Q blockchain discord to request your mainnet-Key. this is optional but if you want your nodes to be available on stats pages you need to add your mainnet-key to the docker file configuration.

// configure the docker
nano docker-compose.yaml
Then add "--ethstats=<Your_Validator_Name>:<Mainnet_access_key>",
// run the application
docker compose up -d

to check logs, you can do:

docker compose logs -f

Check your validator status on

Good to know: Please check the validator FAQ before ask something, go to :)

You need to be on top rank to get rewarded as validator. As of this tutorial made there is 22 active validator and 34 backup validator are rewarded.

go to and get stake for rank to your own nodes and climb to the top.

Last updated