base /node

Everything required to run your own Base node

★ 68,296⑂ 3,289👁 321⑃ 563● 381▤ 86◈ 0
ShellMITCreated 2023-02-01base.org
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 o

Latest release

v1.2.0 v1.2.0 2026-07-22
What 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

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON