🕵️ TenderDuty for Node Monitoring

TenderDuty is a robust tool for monitoring blockchain nodes, providing insights into network height, validator status, uptime, signed blocks, and transmitted blocks. It also supports alerts via Telegram and Discord for effective monitoring.


Preparing the Environment

Start by updating your server and installing the necessary dependencies:

sudo apt update && sudo apt upgrade -y
sudo apt install curl git wget jq make gcc tmux htop pkg-config libssl-dev tar clang unzip -y

Installing Docker

Docker is required to run TenderDuty. Follow these steps to install it:

Add the Docker repository key:

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

Add the Docker repository:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

Install Docker:

sudo apt update && sudo apt install docker-ce -y

Verify the installation:

docker --version

Setting Up TenderDuty

Create a dedicated directory for TenderDuty and set up the configuration.

Create the directory and navigate to it:

Download the example configuration file:

Edit the configuration file:

Customize the configuration:

  • Replace celestia with your project name.

  • Update the chain_id (e.g., replace mocha-4 with your chain ID, such as testnet-1).

  • Enter your validator address in the valoper_address field.

  • Update the url field with the RPC address of your node, such as tcp://localhost:26657.

Running TenderDuty

Launch TenderDuty as a Docker container using the following command:

Securing the Server

To protect your server, configure a firewall.

Install the ufw firewall if not already installed:

Set up firewall rules:

You can now access the TenderDuty dashboard in your browser at: http://<YOUR_SERVER_IP>:8888.


Configuring Telegram Notifications

To configure, use this documentation.

To enable notifications in Telegram:

  1. Create a Telegram bot using @BotFather and save the API token.

  2. Create a Telegram group, add the bot to the group, and retrieve the group ID.

  3. Edit the configuration file:

  4. Modify the Telegram section:

Restarting TenderDuty

Apply the configuration changes by restarting the Docker container:


TenderDuty is now fully installed and configured. Monitor your node status, receive real-time alerts, and manage everything via the web interface.

Last updated