Become a Validator Node Operator
During the PoA period (approximately one year), Validators will be accepted by approval only. To apply to be a validator on SatoshiChain, please fill out this form.
This manual provides step-by-step instructions on how to set up and run a validator node, as well as best practices and important considerations for operating a successful and secure validator.
Minimum server requirements should be as listed below for testing phase:
•4 core CPU, 8 GB RAM, 100GB SSD or Nvme storage
•Linux Ubuntu Server 22.04 (LTS) x64 OS
•Screen service installed
•Node is installed (version v12 or newer)
•zip service installed
•git installed
•Should be open port 1478 in your network For both installation we will share prepareNode.zip file.
Automatic Installation (recommended)
We created a ZIP file to prepare a node. You need to upload this ZIP file to the server and unzip it. Required SSH commands are as below.
Our node folder is /home/satoshiNode. In this tutorial (if you are not root user, you need to use "~/" instead of "/home/" path from commands. Only use like: mkdir satoshiNode).
Server commands after connecting ssh(as root):
mkdir /home/satoshiNode
cd /home/satoshiNode
upload prepareNode.zip file to /home/satoshiNode folder
unzip prepareNode.zip
chmod +x prepareNodeforPOS.sh
./prepareNodeforPOS.sh
Write your server public IP address there and press enter
After IP address is entered the script will manage all and run the node automatically. When the process will be completed “All done!" message will be displayed.
Manual Installation
To setup services:
Node JS:
Screen:
Git:
Zip:
Create validator folder and upload chain files:
Upload prepareNode.zip file to ~/satoshiNode/ folder
You should have below 4 files for installation:
satoshi-blockchain
faucet
genesis.json
pub-staking.zip
We need to make below files executable:
Now create Satoshi Chain files and export validator info (Public wallet address, BLS Public address and NodeID) to secrets.txt:
Run below command to get 100 SATS in your wallet, we will use 1 SATS in stake stage:
Add your public server IP address instead of serverIP in command and run your node as validator. We can call this as your validator start command:
System will start to sync all blocks in network, you need to wait to finish sync. You can check blocks with below command and go to next-step after see latest blocks(you can check current blocks from explorer):
Unzip smart contracts to server for stake and register your validator:
Now you need to create environment variables to declare your validator:
Create .env file using vi command or any editor you want like Nano. Press A for edit file. You can use CTRL + C and type :wq and enter to save added variables.
Paste below variables in .env file, change PRIVATE_KEYS and BLS_PUBLIC_KEY and save file:
Install all modules:
Stake as validator:
Move to the parent directory of current directory:
Check if validator command works right. If you see there "satoshi-posNode" after execute below command means validator app working fine:
You can see logs via tail command:
If you want to stop your validator app:
Last updated