SPS Validator Node: Setup Guide for Dummies on Windows

(Edited)

Hi!
I've created this guide for those who want to run a Validator node on a Windows PC without buying a server. If anything is unclear, doesn't work, or have any questions, feel free to leave a comment! I'll be happy to help.

Preparing

Type ‘powershell’ on windows search bar
Run ‘Windows PowerShell’ as administrator

2025-03-11-15-05-53.jpg



run
wsl --install
2025-03-11-15-10-44.jpg



This will install ubuntu by default
Restart your computer after installation

Install Docker Desktop
Download and install Docker Desktop from
https://docs.docker.com/desktop/setup/install/windows-install/

2025-03-11-15-09-30.jpg



During installation, ensure the "Use WSL 2 instead of Hyper-V" option is selected
2025-03-11-15-11-33.jpg


After installation, open Docker Desktop , Click Skip so you don’t have sign up docker account

image.png

and go to Settings > Resources > WSL Integration
Enable integration with your installed WSL distro - Ubuntu

2025-03-11-15-25-10.jpg


Setting Up the Validator

Open your WSL terminal
Search for "Ubuntu" in the Start menu and click Ubuntu or run wsl in PowerShell

2025-03-11-15-26-10.jpg

2025-03-11-15-51-04.jpg


Get node files

Option 1 (Recommended)

Copy and paste does not work. Be careful the typo and space!

run
bash -c "$(curl -s https://raw.githubusercontent.com/TheSPSDAO/SPS-Validator/refs/tags/vlatest/install.sh)"

You will be asked those questions
Do you want to use a production prefix or qa prefix?
-> type 1
Enter your the hive account name
-> type your hive account
Enter your the hive posting key
-> skip it for now We will put your posting key later. Just enter or type random word like 1111 for now
Do you want to turn on block pruning?
-> type y
Are you sure you want to destory?
-> type y

image.png

run
cd SPS-Validator

2025-03-11-16-15-18.jpg


Option 2 (Skip this if you done with option 1)
run (change the mail with your actual email)
ssh-keygen -t ed25519 -C "your-email@example.com"

It asks three questions you can just enter three times for the questions.
→ enter → enter → enter

2025-03-11-16-04-21.jpg


run
cat ~/.ssh/id_ed25519.pub

drag & select the key and copy the key with ctrl+C

2025-03-11-16-05-10.jpg

Sign up and log in github.com
After login github, go setting

2025-03-11-16-01-01.jpg

SSH and GPG keys → New SSH key

2025-03-11-16-01-25.jpg

paste the key and add ssh key

2025-03-11-16-06-08.jpg

2025-03-11-16-05-50.jpg


run
git clone --branch vlatest --single-branch git@github.com:TheSPSDAO/SPS-Validator.git
yes

2025-03-11-16-14-56.jpg

run
cd SPS-Validator

2025-03-11-16-15-18.jpg


'Get node files' part option 1 or option 2 done!

Set up environment variables

Edit the configuration file

run
cp .env-example .env

Use a txt editor to modify the .env file:
run
nano .env

  • Important settings to configure:
    • VALIDATOR_ACCOUNT: Your Hive account name
    • VALIDATOR_KEY: Your Hive posting key
    • If you just want license rewards, set DB_BLOCK_RETENTION=432000 to keep your database size small if you’re not aiming Top Validators. Recommend for most people.

2025-03-11-16-17-05.jpg

2025-03-11-16-16-48.jpg


save the updated .env file
ctrl + x → y → enter

2025-03-11-16-17-43.jpg

Build the validator

run
./run.sh build

  • This will deploy the database, run migrations, and download/deploy the snapshot
  • This process may take some time

2025-03-11-16-39-44.jpg

2025-03-11-16-36-42.jpg

Start the validator

run
./run.sh start all

This starts both the validator and the management UI
This process may take some time

2025-03-11-16-43-03.jpg

You need to wait this number become 0 to start your node validate block

2025-03-11-16-46-38.jpg



Congrat! Now your validator node is running!


Register Your Node

Once your node is fully synced (Blocks to head: 0),

Navigate to the management UI at http://localhost:8888/
Go to the "Manage Validator Nodes" section

2025-03-13-19-17-51.jpg

You can skip API url, Post URL, Reward account
After registration and once your node synced the block (Blocks to head: 0), set your node to "active"

Stake Licenses for Rewards

To earn LICENSE rewards:

Go to https://splinterlands.com/dashboard/licenses
Click Activate and Stake Licenses

2025-03-13-19-41-41.jpg

2025-03-13-19-42-40.jpg



Congrat! Now your validator node is running and you are getting License block reward! 🎉

Keeping the Node Running

To keep the node running continuously:

  1. Make sure your WSL instance stays running

    • WSL might shut down with some reason like a system restart
  2. After a Windows restart:

    • Open WSL terminal
    • Navigate to your SPS-Validator directory
    • Check if the validator is running:

    ./run.sh logs

    • If not running, start it again:

    ./run.sh start all

  3. Set Windows to auto-start Docker Desktop

    • This will ensure Docker is available after restarts
    • Open Docker Desktop > Settings > General > Start Docker Desktop when you log in
  4. Consider using a WSL startup script to auto-start the validator

    • Create a startup script in your home directory:
      echo '#!/bin/bash
      cd ~/SPS-Validator
      ./run.sh start all' > ~/start-validator.sh
      chmod +x ~/start-validator.sh

2025-03-11-16-26-49.jpg

  • Add this to your Windows startup by creating a .vbs script:
  • open notepad app on windows -> paste this

Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "wsl -d Ubuntu -e /bin/bash -c ~/start-validator.sh", 0, True

Save this as a .vbs file and place it in your Windows Startup folder (Win+R, then type shell:startup)

Common Commands for Management

  • ./run.sh stop: Stops all services
  • ./run.sh start: Starts validator and database
  • ./run.sh start all: Starts validator, database, and UI
  • ./run.sh logs: Shows the validator logs
  • ./run.sh rebuild_service validator: Rebuilds the validator to apply new environment variables
  • ./run.sh snapshot: Creates a backup of your database

You just made the SPS chain stronger and more decentralized! 💪

If this helps, please consider voting for my node to support.
https://monstermarket.io/validators?validator=hanv
Thank you!



0
0
0.000

5 comments

Thanks for this @hanv. I'm going to give this a go later in the week just to build up some knowledge, I'll let you know how I get on.

0
0
0.000
(Edited)

You can do it! It’ll be a good experience to set up and run a node while learning new things. Good luck! I’m curious to see how it turns out, so let me know the results. Thank you for your vote on my node! @abh12345 !! 🙏

0
0
0.000

Wow! This is all gibberish to me, but I would like to run my own node so that I'm not staking on anyone else. Here we go...

0
0
0.000

There might be some hurdles when you first start, but you'll succeed in the end! Good luck!

0
0
0.000