Operate your own staking node

Stakers use IDEX tokens and run IDEX's staking software to operate a node. Stakers earn 50% of trade fees collected by the network as compensation for their work.

The IDEX staking software is a standalone application that operates an IDEX node. In order to participate in the IDEX staking program, you must have a wallet that holds a minimum of 5,000 IDEX.

Getting Started

For developers, and users familiar with a command line interface, a streamlined set of instructions is available on our github.

For users who are new to the process, we've detailed a set of step-by-step instructions below using Digital Ocean.

First, create an account at Digital Ocean and log in: https://www.digitalocean.com/

Once you log in to Digital Ocean, on the lefthand side click "New Project" under "Projects" and fill out the form. Alternatively, in the upper right click "Create" and select "Droplets" from the drop down.

Set up your droplet with the following options. Make sure to select Ubuntu 20.04(LTS), a basic shared CPU of $5/mo. This configuration would be enough to run the staking node.

Choose whatever location you desire for your droplet. This will not impact staking.

For authentication select the password option and enter a password of your choice. Save the changes to continue.

You will land on a page that looks like the screenshot below (admin page). Click on your new droplet (in this example its ubuntu-s-1vcpu-1gb-intel-sfo3-01).

Once you click on your droplet, you'll be taken to a page showing more details about your droplet. Click on Console on the far right. This will open up a terminal window.

In the terminal window type inadduser xxx. In this case fill in xxx with whatever you desire your username to be. This is up to personal preference.

After you run theadduser command you will be asked to enter a password and enter it again to confirm it.

Note: when you are typing in your password it will not show up in the terminal.

Once you have entered your password, hit enter to skip the remaining questions as no input is required.

Answer "Y" on the last question and hit enter.

In the same terminal, run the following command usermod -aG sudo xxx. In place of, xxx put in the username you created earlier.

Close the terminal window and navigate back to your droplet on digital ocean. In the upper left you will see your node's IP address.

Connecting to the staking node

Copy that IP address and open the terminal on your computer. If you do not know how to open the terminal on your computer google "How to use the terminal on (insert your operating system here)" e.g. Windows.

https://www.wikihow.com/Open-Terminal-in-Windows

In your terminal type in ssh xxx@yyy. xxx is the username you created earlier, and yyy is the IP address you copied earlier.

Once you have input this text, hit enter.

  • You will be met with some text confirming you'd like to connect. Type in "yes" and hit enter.

  • You will then be asked to fill in your password and hit enter again. Reminder that this is the password you created earlier, not the password you created on the digital ocean website.

For example, to connect to my node I type "ssh phil@147.182.227.77"

Once you have connected to your server, you will be met with a screen that looks like the following.

Input the following command and hit enter.

Configuring the staking node

Note: the following code snippets can all be copy/pasted using the copy shortcut in the right side of the text box.

  • curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Now input the following command and hit enter.

  • sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

Next, the following command and hit enter.

  • sudo apt-get update

Input the following command and hit enter. It will ask if you would like to continue, input "y" and hit enter again.

  • sudo apt-get install docker-ce docker-ce-cli containerd.io

Input the following command and hit enter.

Note: Where it says "USER" leave the text as is, do not put in your username.

  • sudo usermod -aG docker ${USER}

Type in "exit" and log back in using the instructions from step 14.

Input the following command and hit enter.

  • docker run hello-world

Input the following command and hit enter.

  • wget "https://raw.githubusercontent.com/idexio/staking-replicator/main/scripts/start-idex-replicator.sh"

Input the following command and hit enter.

  • chmod a+x start-idex-replicator.sh

Input the following command and hit enter.

  • ./start-idex-replicator.sh

Getting your staking key

Get your staking key - Connect to the IDEX website with the wallet that is holding your IDEX tokens and navigate to the rewards page. Below "Getting Started" you will see your Replicator Staking Key (see screenshot below).

Copy this key, paste it into the terminal, and press enter to finish the previous step.

You will see a long string of text come through. Once its finished, you've completed the setup process.

Congratulations! You are now staking IDEX!

Stopping and restarting your node

If you need to stop your replicator node, you must first connect to it. Log in to your Digital Ocean account, find your droplet and get its IP address.

Open a new Windows terminal now. In your terminal type in ssh xxx@yyy. xxx is the username you created for the staking node setup, and yyy is the IP address you copied from your digital ocean's droplet. Once you have input this text, hit enter.

  • You will be met with some text confirming you'd like to connect. Type in "yes" and hit enter.

  • You will then be asked to fill in your password and hit enter again. Reminder that this is the password you created earlier, not the password you created on the digital ocean website.

Replicator can be taken offline via Docker.

docker stop staking-replicator

Re-running the following script will bring Replicator back online:

./start-idex-replicator.sh

Last updated