Run Layer
Tellor layer is a proof of stake network open to everyone who wants to run a validator or be a reporter.
Pre-requisites
A local or cloud system running linux, or macOS. If on windows, use WSL.
Golang (install latest version here)
jq (
sudo apt install jq
on linux, orbrew install jq
on mac)yq (
sudo apt install yq
on linux, orbrew install yq
on mac)sed (
sudo apt install sed
on linux, orbrew install sed
on mac)
Recommended Machine Specs
If running a node for personal RPC (developer):
A modern cpu with at least 4 cores
ram: 16 gb
storage: 500gb+ (solid state)
If running a validator / reporter:
A modern cpu with at least 8 cores / threads
ram: 32 gb
storage: 500gb+ @ nvme gen3
network: 500mb/s DL, 100mb/s UL (the faster the better)
Build and Configure layerd
There are 9 steps in this part.
Clone the Layer repo, change directory to
layer
Build
layerd
with the command:
An ethereum RPC is requred for reporting bridge requests on layer. Using your favorite text editor, create a file called
secrets.yaml
:
Replacing `your_sepolia_testnet_rpc_url` with the url of a reliable sepolia rpc, and add the token bridge contract address as shown here:
Exit nano with ctrl^x
then enter y
to save the changes.
Initialize .layer folder in your home directory
Create and Run the configure_layer script We need to change the config files a bit using one of the provided
configure_layer_nix.sh
orconfigure_layer_mac.sh
scripts from the layerdocs repo.If on linux:
create the script file locally:
Navigate here, select all and copy the code to your clipboard.
Paste the code, then exit nano with
ctrl^x
then entery
to save the changes.
If on Mac:
create the script file locally:
Navigate here, select all and copy the code to your clipboard.
Paste the code, then exit nano with
ctrl^x
then entery
to save the changes.
Give your new script permission to execute and run it to replace the default configs with proper layer chain configs:
You're now ready to start your node with default sync settings.
Before starting your node, it's a good idea to think about how you want to run it so that the process does not get killed accidentally. GNU screen is a great option for beginners. More advanced setups can be achieved using systemd.
If you want to do a state sync, do not start your node yet! Go here and do the State Sync Setup Steps.
If you want to do a genesis sync (takes longer but it always works), continue with the steps below.
Start your layer node:
You should now see your log quickly downloading blocks!
Upgrade the binary when syncing halts. The binary that you need will be visible in the log.
After you build the new binary, kill and restart your node. This must be done for all upgrades since genesis.
Check if you're fully synced. Open another terminal window and use the command:
You should see a json formated list of information about your running node. If you see catching_up":false}
that means that you're node is fully synced and ready to use!
Last updated