⚙️ T3RN Executor Node Installation
📋 System Requirements
- CPU: 4 vCPU (recommended for stability)
- RAM: 16GB (for optimal performance)
- Storage: 200GB+ SSD
- Network: Stable internet connection
- OS: Ubuntu 22.04 (64-bit) recommended
🔮 What is T3RN Network?
T3RN is a modular protocol that allows smart contracts to execute securely across multiple blockchains. Executor nodes are essential actors that receive execution orders from the T3RN runtime, run transactions on external chains like Arbitrum, Base, and Optimism, then submit back signed proofs of execution.
- Private key of wallet with testnet ETH (10-11 ETH per network)
- Git, Docker, and Docker Compose installed
- Testnet ETH on Sepolia, Optimism, Base, Arbitrum, Unichain, Caldera
🚀 Quick Installation
Method 1: Automated Script (Recommended)
curl -sSL https://raw.githubusercontent.com/KARINE001/tokio-node-t3rn-executor/main/install.sh | bash
Method 2: Manual Installation
Follow the step-by-step guide below for full control over the installation process.
🛠️ Manual Installation Steps
Step 1: Install Prerequisites
Update your system and install required tools:
# Update system
sudo apt update && sudo apt install git -y
# Install Docker
curl -fsSL https://get.docker.com | sh
# Add user to Docker group (optional)
sudo usermod -aG docker $USER
newgrp docker
# Enable Docker service
sudo systemctl enable docker
sudo systemctl start docker
# Install Docker Compose plugin
sudo apt install docker-compose-plugin -y
Step 2: Clone Repository
git clone https://github.com/KARINE001/tokio-node-t3rn-executor.git
cd tokio-node-t3rn-executor
Step 3: Configure Environment
Set up your environment variables:
# Copy example environment file
cp .env.example .env
# Edit configuration
nano .env
Add your private key to the .env
file:
# T3RN Executor Configuration
PRIVATE_KEY_LOCAL=your_private_key_here
ENABLED_NETWORKS=arbitrum-sepolia,base-sepolia,blast-sepolia,optimism-sepolia,l1rn-sepolia
⚠️ Important: Your wallet must have 10-11 ETH on each enabled network for the executor to process orders.
Step 4: Build and Start Node
# Build and start the container
docker compose up -d --build
# Check if container is running
docker compose ps
📊 Verification & Monitoring
Check Container Status
# View container status
docker compose ps
# Check real-time logs
docker compose logs -f
# View recent logs
docker compose logs --tail=100
Monitor Executor Activity
# Check specific executor logs
docker compose logs executor
# Monitor order processing
docker compose logs executor | grep -i "order"
# Check balance warnings
docker compose logs executor | grep -i "balance"
🔧 Maintenance Commands
Restart Executor
# Restart the service
docker compose restart
# Rebuild and restart (after updates)
docker compose down
docker compose up -d --build
Update Node
# Pull latest changes
git pull origin main
# Rebuild container with updates
docker compose down
docker compose up -d --build
View Detailed Logs
# Export logs to file
docker compose logs > t3rn_executor.log
# Search for specific errors
docker compose logs | grep -i error
# Monitor network-specific activity
docker compose logs | grep -i "arbitrum\|base\|optimism"
💰 Wallet Funding Requirements
Your executor wallet must be funded with testnet ETH on all enabled networks:
Required Balances
- Minimum: 10-11 ETH per network
- Networks: Sepolia, Optimism, Base, Arbitrum, Unichain, Caldera, Blast
- Total needed: ~70-80 ETH across all networks
Funding Sources
Sepolia ETH Faucets:
Bridge to L2 Networks:
- Superbridge (Base, Optimism)
- Relay Bridge (Multiple networks)
Purchase Sepolia ETH:
- Testnet Bridge (Convert mainnet ETH)
Caldera Faucet (L2RN):
🚨 Troubleshooting
Common Issues
Container fails to start:
# Check Docker service
sudo systemctl status docker
# Verify configuration
cat .env | grep PRIVATE_KEY
Low balance warnings:
# Check current balances
docker compose logs | grep -i "insufficient"
# Fund wallets on respective networks
# Orders will be skipped until balances are sufficient
Network connection issues:
# Test Docker networking
docker compose exec executor ping google.com
# Restart Docker service
sudo systemctl restart docker
Configuration Validation
# Verify environment variables are loaded
docker compose exec executor env | grep T3RN
# Check enabled networks
docker compose logs | grep -i "enabled networks"
📈 Performance Monitoring
Health Checks
# Basic health check script
curl -f http://localhost:9090/metrics 2>/dev/null || echo "Metrics not available"
# Monitor resource usage
docker stats --no-stream
Order Processing Stats
# Count successful orders
docker compose logs | grep -c "order.*success"
# Check order failures
docker compose logs | grep -i "order.*fail"
# Monitor cross-chain activity
docker compose logs | grep -i "executed on"
🎯 Next Steps
✅ Your T3RN Executor node is now running!
What's next:
- Monitor logs for successful order execution
- Ensure consistent funding across all networks
- Join T3RN Discord for updates
- Keep the executor online for maximum participation
🧩 Project Structure
tokio-node-t3rn-executor/
├── docker-compose.yml # Container orchestration
├── Dockerfile # Custom executor image
├── .env.example # Configuration template
├── entrypoint.sh # Container startup script
├── check_t3rn_node.sh # Health monitoring script
└── README.md # Detailed documentation
🆘 Support
Need help?
- 💬 T3RN Discord - Community support
- 📚 Official T3RN Docs
- 📧 GitHub Issues
🚀 Pro Tip: Join the T3RN Discord to stay updated on protocol developments and connect with other executor operators. The more active your executor, the more you contribute to cross-chain interoperability!