Elixir v3 (NEWEST)

Recommended hardware requirements

Hardware
Specs

CPU

2 CPU

RAM

8GB RAM

DISK

100 GB STORAGE

OS

Ubuntu 22.04 LTS

Official documentation says that 8RAM, 100GB disk will be enough.

Prerequisite

1) Update the local package repository database & upgrade installed packages to their latest versions based on the updated package database:

sudo apt-get update && apt-get upgrade -y

2) Install packages:

sudo apt install wget -y

3) Install Docker:

sudo apt install docker.io -y && \
docker --version

Installation

1) Create elixir folder:

mkdir elixir

2) Move to elixir folder:

cd elixir

3) Download the validator environment template file:

wget https://files.elixir.finance/validator.env

4) Open validator.env with nano:

nano validator.env

5) Fill the info about the wallet that you’ll be using for this validator. For security reasons, this wallet should never be used for anything other than running a testnet validator.

STRATEGY_EXECUTOR_IP_ADDRESS=your IP address STRATEGY_EXECUTOR_DISPLAY_NAME=your moniker STRATEGY_EXECUTOR_BENEFICIARY=your address for validator rewards SIGNER_PRIVATE_KEY=your private key (use private key from newly created wallet, not the EXECUTOR_BENEFICIARY)

6) Save and exit:

Enroll validator

1) Go to faucet and mint MOCK tokens on the Ethereum Sepolia test network. Note, that You can mint tokens to any wallet, such as EXECUTOR_BENEFICIARY from above. It will require some Sepolia ETH for gas fee.

2) Approve received MOCK tokens and stake them.

3) Click the “CUSTOM VALIDATOR” button above the active validator list. In the Custom validator modal that appears, enter your validator’s public wallet address of SIGNER_PRIVATE_KEY from above and click “DELEGATE”. Confirm the transaction and wait for it to complete on-chain.

Running Your Validator

1) Pull the Docker image:

docker pull elixirprotocol/validator:v3 --platform linux/amd64

2) Run the validator:

docker run --env-file /root/elixir/validator.env --platform linux/amd64 -p 17690:17690 --restart unless-stopped elixirprotocol/validator:v3

3) Check if Docker image was created:

docker ps

You should see such info:

Logs

To check logs run:

docker logs <CONTAINER_ID>

Where <CONTAINER_ID> is an ID from previous step.

Should look like this:

Useful commands

Running A Validator On Apple/ARM Silicon

docker run -d --env-file /root/elixir/validator.env --name elixir --platform linux/amd64 elixirprotocol/validator:v3

Exposing Health Checks and Metrics

docker run -d --env-file /root/elixir/validator.env --name elixir -p 17690:17690 elixirprotocol/validator:v3

Upgrading your validator

docker ps | grep elixirprotocol | awk '{print $1}' | xargs docker stop && \
docker pull elixirprotocol/validator:v3 --platform linux/amd64 && \
docker run --env-file /root/elixir/validator.env --platform linux/amd64 -p 17690:17690 --restart unless-stopped elixirprotocol/validator:v3

Delete Node (If campaigns already over)

docker ps | grep elixirprotocol | awk '{print $1}' | xargs docker stop && \
cd && \
rm –rf elixir && \
docker system prune -a && \
docker volume prune -f && \
docker network prune -f

Last updated