How to run a Koinos Node (V2)

Start Koinos Node via VPS using Ubuntu (command line)

Pre-requisites: You must be comfortable using command line. If this is your first time, you may need to do some googling to get used to it.

Machine Requirements: Koinos requires a modern 4-core CPU such as an Intel I3 or I5 of recent generation, 16gb of RAM, and 1 TB of space with an SSD. However you can get away with far less currently because transaction volume currently low at the moment. If you decide to run a machine that has lower specifications, do not be surprised that your machine “falls behind” and cannot keep up with block production. Koinos node software is fairly fault tolerant and if your machine cannot keep up, it will automatically go into sync only mode to keep up with the main chain.

Step 1.
Get a VPS.

Step 2. Sign into your VPS and create a user with root privileges. Install docker.

How to install Docker

dont forget to give docker sudo privileges
How to give docker sudo privilege

Step 3.
Clone the Koinos Repo
git clone --recursive https://github.com/koinos/koinos.git

Step 4:
Get the latest version of Koinos Node (v2.0.0)
cd koinos
git checkout v2.0.0

Step 5.
Copy or rename config-example folder to config. I chose to copy.
cp -r config-example config

Step 6.
Enter the config folder and open config.yml with your prefered editor. I use nano.

cd config
sudo nano config.yml

Once inside, edit the following fields:
change
# producer:
to
producer: <insert your wallet address here>

change
#private-key-file:private.key
to
private-key-file:private.key

Step 7.
Copy or rename env.example to .env, I chose to copy. Once you copy, you wont need to edit the file unless you change the basedir.

cp env.example .env

Step 8.
From koinos root folder, start the syncing process by using the docker compose command. The command below uses the -d flag which is refere to as daemon mode, or detatched mode. When you are using the -d flag, you will be returned to command prompt and you will not see anything. If you are using a VPS, you can disconnect from the VPS and the node will still sync.

docker-compose --profile all up -d

This will fire up all of microservices to begin syncing with the Koinos blockchain.

Step 9.

Syncing the node may take a while depending on when you are reading this document and how fast your machine/internet is. At this point, you are running daemon mode, so you won’t get any prompts on whether or not your node is synced. To check this, run the following command to check the latest koinos chain microservice logs:

docker logs koinos-chain-1

Which will display the latest log. Block applied means it is applying the latest block.

You may find that there is an error in the log regarding Block application failed...proof failed vrf validation. The reason is because you havent registered the node with the wallet containing your $VHP. If you are unsure what $VHP is and you are following this guide STOP IMMEDIATELY because the next few steps require you to burn your $KOIN. If you dont want to do this, then you should not be mining!

If you are reading for entertainment, then here is an In Depth Guide to $KOIN and $VHP

If you’ve made it this far then the next step is to shut down the node and get everything read to produce blocks. To shut down your node, enter docker compose --profile all down.

Step 10.
Enter the base directory look for your public key under block_producer folder.
cd .koinos
cd block_producer

Open your public.key file with nano and copy it
nano public.key

Step 11.
From here, you can use Kondor+KoinosBlocks or Koinos CLI to register your node’s public key to the wallet address that contains your VHP.

I suggest you follow step 5 from Koinos Guides

Step 12.
After everything is complete, you can start the node again using docker compose --profile all up -d and your node should set!