Welcome to this tutorial, where I will guide you through the process of setting up your initial Taiko node and even become an active participant in the network, either as a proposer or a prover. In case you need assistance with anything, reach out to our community members on our Discord server.
Happy tinkering :)
Before you start, ensure you have the following ready:
Docker: Installed and running on your system.
Git: Also installed on your system.
Terminal Setup for Windows Users: If you're on Windows, it's recommended to use Git BASH or Windows Subsystem for Linux (WSL) as your terminal.
Hardware Requirements: Make sure your system meets the Geth minimum hardware requirements. Note that the storage requirement for Taiko nodes is less demanding compared to Geth.
The most straightforward method to set up a node is by using the STN tool from Dave. To install this tool, run the following command in your terminal:
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/d1onys1us/stn/releases/download/v0.1.30/stn-installer.sh | sh
Next, install the actual Taiko node with this command:
stn install
You need to configure an L1 Holesky RPC for your node. You have two options:
Local RPC: Set up a local RPC (guide available here).
External RPC: Use a service like BlockPi. Note: Free external RPC services will likely impose rate limits.
Assuming you choose BlockPi, sign up and request a Holesky RPC to receive HTTPS and WSS URLs.
Start the configuration process and input your RPC URLs:
stn config
Finally, launch your Taiko node:
stn up
On the first run, this command will download the necessary Docker containers. Then, your node will start syncing to the chain head.
After your node is done syncing you are ready to set up the proposer functionality. It's a pretty straightforward process.
Important Reminder: Use a test wallet for this purpose. Do not use a wallet that contains funds. Create a new wallet dedicated to this task if you don't have a test wallet.
To function as a proposer, you'll need some ETH on Holesky, for this we will use a faucet.
Run the following command to start the proposer configuration:
stn config proposer
This command initiates the configuration process for the proposer role.
During the configuration, you'll be asked to input your private key. Enter the private key for your test wallet. Do not include the '0x' prefix when entering the key.
To check if everything is set up correctly, use the following command:
stn logs proposer
This command displays the logs for the proposer, allowing you to verify that the configuration is correct.
You may notice that your blocks aren't getting proposed. This can happen because the node is configured to use a public prover from the market. Currently, there might be a substantial load on the public prover due to its high demand, affecting the proposing process.