68,296
stars
+0
3,289
forks
321
watchers
563
prs
381
issues
86
releases
0
discussions
README
[!CAUTION]
This repository is archived
Use releases from base/base for all new installations and upgrades. Development and releases have moved to base/base; this repository is no longer maintained.
!Base
Base Node
Base is a secure, low-cost, developer-friendly Ethereum L2 built on Optimism's OP Stack. This repository contains a Docker build for running a Base node with base-reth-node and base-consensus.
Quick Start
1. Ensure you have an Ethereum L1 full node RPC and beacon endpoint available.
2. Choose your network:
- For mainnet: use .env.mainnet
- For testnet: use .env.sepolia
3. Configure your L1 endpoints in the appropriate .env file:
bash
BASE_NODE_L1_ETH_RPC=
BASE_NODE_L1_BEACON=
4. Start the node:
bash
For mainnet (default):
docker compose up --build
For testnet:
NETWORK_ENV=.env.sepolia docker compose up --build
Supported Clients
- Execution: base-reth-node
- Consensus: base-consensus
Requirements
Minimum Requirements
- Modern multicore CPU
- 32GB RAM (64GB recommended)
- NVMe SSD drive
- Storage: (2 current chain size + snapshot size + 20% buffer) to accommodate future growth
- Docker and Docker Compose
Production Hardware Specifications
The following are the hardware specifications we use in production:
Reth Archive Node (recommended)
- Instance: AWS i7i.12xlarge
- Storage: RAID 0 of all local NVMe drives (/dev/nvme)
- Filesystem: ext4
Configuration
Required Settings
- BASE_NODE_L1_ETH_RPC: your Ethereum L1 node RPC endpoint
- BASE_NODE_L1_BEACON: your L1 beacon node endpoint
- BASE_NODE_NETWORK: base or base-sepolia
- RETH_CHAIN: base or base-sepolia
Network Settings
- Mainnet:
- RETH_CHAIN=base
- BASE_NODE_NETWORK=base
- Sequencer: https://mainnet-sequencer.base.org
- Sepolia:
- RETH_CHAIN=base-sepolia
- BASE_NODE_NETWORK=base-sepolia
- Sequencer: https://sepolia-sequencer.base.org
Optional Features
- Flashblocks: set RETH_FB_WEBSOCKET_URL. When set, the execution client runs in Flashblocks mode; otherwise it runs in vanilla mode.
- Follow mode: set BASE_NODE_SOURCE_L2_RPC
- Pruning: set RETH_PRUNING_ARGS
For full configuration options, see .env.mainnet or .env.sepolia.
Testing Flashblocks RPC Methods
When running in Flashblocks mode, you can query a pending block using the Flashblocks RPC:
bash
curl -X POST \
--data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["pending", false],"id":1}' \
http://localhost:8545
Snapshots
Snapshots are available to help you sync your node more quickly. See docs.base.org for links and more details on how to restore from a snapshot.
Supported Networks
| Network | Status |
| ------- | ------ |
| Mainnet | ✅ |
| Testnet | ✅ |
Troubleshooting
For support please join our Discord and post in 🛠|node-operators. You can alternatively open a new GitHub issue.
Disclaimer
THE NODE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. We make no guarantees about asset protection oLatest release
v1.2.0 v1.2.0 2026-07-22What Changed [!IMPORTANT] Base Mainnet: Required upgrade and migration by mid August. Base Sepolia: Highly recommended upgrade and migration. Migration time: Migrations may take a while, we strongly suggest you start mainnet as soon as possible. V1 Snapshots: Will be decommissioned over the next few weeks. base-reth-node - Reth V2 Snapshots To benefit from V2, you must both update to 1.2.0 and update your database to use v2 storage. You can do this via: Recommended: Download a new snapshot base-reth-node download. See the docs for more information. Migrate your existin