Skip to content

Latest commit

 

History

History
125 lines (89 loc) · 4.03 KB

set-up-and-connect-a-node-manually.md

File metadata and controls

125 lines (89 loc) · 4.03 KB

Set up and Connect a node manually

How to set up and connect a node to the Mainnet manually.

{% hint style="warning" %} Before proceeding, please make sure that your machine meets the hardware and software node requirements. {% endhint %}

{% hint style="info" %} At the end of this guide, the JuneoGo process should remain running in the background on your server (e.g. as a service), which is not demonstrated in this guide. If you are less experienced with this and with the linux operating system in general, we suggest using our Docker guide. {% endhint %}

{% hint style="info" %} For experienced linux users who wish to set up JuneoGo automatically, we suggest following the Installation Script JuneoGo setup guide. {% endhint %}

Setup and Connect a node to the Mainnet

First, you should transfer the project files found here to your server. If you have git installed on your server, you may execute the following commands:

cd ~

git clone https://github.com/Juneo-io/juneogo-binaries

The required files will now be found in the juneogo-binaries folder in your home directory.

Configuring the initial binary files

{% hint style="warning" %} Do not execute the preparation.sh or simple_setup.sh scripts found inside the juneogo-binaries directory. These are intended to only be used when following the Install Script JuneoGo setup guide {% endhint %}

{% hint style="warning" %} If you previously ran a node on the Socotra Testnet, updating the binaries will bring you directly on Mainnet. {% endhint %}

The binary files required to run JuneoGo are:

  1. juneogo
  2. jevm
  3. srEr2XGGtowDVNQ6YgXcdUb16FGknssLTGUFYg7iMqESJ4h8e

To grant execution permissions of the binary files, please execute the following commands:

chmod +x ~/juneogo-binaries/juneogo
chmod +x ~/juneogo-binaries/plugins/jevm
chmod +x ~/juneogo-binaries/plugins/srEr2XGGtowDVNQ6YgXcdUb16FGknssLTGUFYg7iMqESJ4h8e

After this, the juneogo binary should be moved to the home directory. The remaining two binaries should be moved to the ~/.juneogo/plugins directory.

To do so, please execute the following commands:

mv ~/juneogo-binaries/juneogo ~

mkdir -p ~/.juneogo/plugins

mv ~/juneogo-binaries/plugins/jevm ~/.juneogo/plugins
mv ~/juneogo-binaries/plugins/srEr2XGGtowDVNQ6YgXcdUb16FGknssLTGUFYg7iMqESJ4h8e ~/.juneogo/plugins

The structure of your home directory should resemble the following:

├── juneogo
├── .juneogo/
│   ├── plugins/
│   │   └── jevm
│   │   └── srEr2XGGtowDVNQ6YgXcdUb16FGknssLTGUFYg7iMqESJ4h8e

{% hint style="warning" %} If these files are structured differenty than above, you will not be able to connect your node. {% endhint %}

You may now connect the node to the network by executing the juneogo binary with the following command:

For Mainnet use :

./juneogo

For Socotra Testnet use :

./juneogo --network-id="socotra"

This will start fetching blocks and bootstrapping your node.

{% hint style="warning" %} Please make sure this process keeps running in the background. If the execution of the juneogo executable stops, your node will be inactive. {% endhint %}

You may check if the node has boostrapped with the following call:

curl -X POST --data '{
    "jsonrpc":"2.0",
    "id"     :1,
    "method" :"info.isBootstrapped",
    "params": {
        "chain":"JUNE"
    }
}' -H 'content-type:application/json;' 127.0.0.1:9650/ext/info

Example response:

{
  "jsonrpc": "2.0",
  "result": {
    "isBootstrapped": true
  },
  "id": 1
}

After the bootstrapping process has completed, you may proceed to the next step - add a node to the Validator Set.