Infrastructure

Run your own 0xL3 blockchain node

0xL3 Blockchain Node

Run your own 0xL3 blockchain node using Docker Compose. This setup includes OP-Reth (Execution Layer) and OP-Node (Consensus Layer) for a complete blockchain infrastructure.

DockerOP-RethOP-NodeChain ID: 7117Block Time: 2s

Network Information

0xL3 Chain Details
Essential network parameters for node setup

Network Configuration:

Chain ID:7117
L1 Network:Optimism (Chain ID: 10)
Block Time:2 seconds
Currency:XL3

RPC Endpoints:

HTTP RPC:http://localhost:9545
WebSocket:ws://localhost:9546
OP-Node RPC:http://localhost:8547

System Requirements

Hardware Requirements
Minimum specifications for running a 0xL3 node

Minimum Requirements:

  • RAM: At least 8GB
  • Storage: At least 50GB free disk space
  • Network: Stable internet connection
  • OS: Linux, macOS, or Windows with WSL2
Software Dependencies
Required software for node operation

Required Software:

  • Docker: Latest version
  • Docker Compose: v2.0+
  • OpenSSL: For JWT secret generation
  • Git: For repository cloning

Installation Guide

Step 1: Clone the Repository
Get the official 0xL3 node repository
git clone https://github.com/0xl3/node.git
cd node
Step 2: Generate JWT Secret
Create authentication secret for OP-Node and OP-Reth communication

Before starting, you need to generate a JWT secret for authentication between OP-Node and OP-Reth:

openssl rand -hex 32 > config/jwt.txt
Step 3: Verify Configuration
Check configuration files before starting the node

Check the configuration files in the config/ directory:

.env

Environment variables for L1 connection and peer nodes

genesis.json

Genesis block configuration for L2 chain

rollup.json

Rollup configuration and system parameters

Step 4: Start the Node
Launch the 0xL3 blockchain node
cd node
docker-compose up -d

Node Management

Check Node Status
Monitor your node's health and performance

View Logs:

# View OP-Reth logs
docker-compose logs -f op-reth
# View OP-Node logs
docker-compose logs -f op-node

Check Status:

docker-compose ps
Node Operations
Common operations for node management

Stop Node:

docker-compose down

Update Node:

docker-compose down
docker-compose pull
docker-compose up -d

Testing Your Node

RPC Connection Tests
Verify your node is working correctly

Check Chain ID:

curl -X POST -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' \
  http://localhost:9545

Check Latest Block:

curl -X POST -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \
  http://localhost:9545

Project Structure

Repository File Structure
Understanding the 0xL3 node repository layout
.
├── config/
│   ├── .env              # Environment variables
│   ├── genesis.json      # Genesis block configuration
│   ├── rollup.json       # Rollup configuration
│   └── jwt.txt           # JWT secret (generated)
└── node/
    ├── docker-compose.yml    # Docker Compose configuration
    ├── op-node-entrypoint    # OP-Node startup script
    ├── op-reth-entrypoint    # OP-Reth startup script
    └── data/                 # Blockchain data directory

Troubleshooting

Common Issues
Solutions for frequent problems

JWT Secret Not Found:

Generate JWT secret with: openssl rand -hex 32 > config/jwt.txt

Port Already in Use:

Stop the service using port 9545 or change the port in docker-compose.yml

Cannot Connect to L1:

Check L1_RPC_URL in config/.env file

Viewing Logs
Debug your node with detailed logging
# View real-time logs
docker-compose logs -f
# View historical logs
docker-compose logs --tail=100 op-reth

Additional Resources

GitHub Repository

Official 0xL3 node source code

View Repository

OP Stack Docs

Official OP Stack documentation

Read Docs

OP-Reth

Execution layer implementation

Learn More

Support

Get help with node setup

Contact Support