Joining Mainnet
General instructions to join the Source Chain mainnet after network genesis.
Current Mainnet
Below is the Source Chain mainnet and its current status. You will need to know the version tag for installation of the sourced
binary.
For details of upgrades on the current mainnet, as well as syncing, you can check out the mainnet repo.
If you get stuck, please ask on Discord.
source-1
v3.0.1
Minimum Hardware Requirements
The minimum recommended hardware requirements for running a validator for the Source Chain testnets are:
16GB RAM
200GB of disk space
2 Cores (modern CPU's)
These specifications are the minimum recommended. As Source Chain is a smart contract platform, it can at times be very demanding on hardware. Low spec validators WILL get stuck on difficult to process blocks.
Note that the blockchain accumulate data as the blockchain continues. This means that you will need to expand your storage as the blockchain database gets larger with time.
Choose an Operating System
The operating system you use for your node is entirely your personal preference. You will be able to compile the sourced daemon on most modern linux distributions and recent versions of macOS.
For the tutorial, it is assumed that you are using an Ubuntu LTS release.
If you have chosen a different operating system, you will need to modify your commands to suit your operating system.
Install pre-requisites
Install Go
Follow the instructions here to install Go.
For an Ubuntu LTS, you can probably use:
Clone Source Chain Repo
Compile sourced binary
Initialize the Source directories and create the local genesis file with the correct chain-id:
Create a local key pair (or add existing key):
Replace <key-name>
with a key name of your choosing.
After creating a new key, the key information and seed phrase will be shown. It is essential to write this seed phrase down and keep it in a safe place. The seed phrase is the only way to restore your keys.
Download Genesis File
Testnet Genesis Repository and Contributions
Genesis sha256
This should return:
Seed nodes to add to config.toml
Find the appropriate section and add:
Set Minimum Gas Price
Start the chain
It will take some time to catch up and sync to the network. Check your status with:
Running in production
Create a systemd file for your Source service:
Copy and paste the following and update:
This assumes $HOME/.source to be your directory for config and data. Your actual directory locations may vary.
Enable and start the new service:
Check status:
Check logs:
Setup cosmovisor
Follow these instructions to setup cosmovisor and start the node.
Upgrade to a validator
To upgrade the node to a validator, you will need to submit a create-validator
transaction:
Backup critical files
There are certain files that you need to backup to be able to restore your validator if, for some reason, it damaged or lost in some way. Please make a secure backup of the following files located in ~/.source/config/
:
priv_validator_key.json
node_key.json
It is recommended that you encrypt the backup of these files.
Last updated