Overview
Relevant source files
This document provides an introduction to the Base Node repository, which contains the Docker builds and configurations necessary to run a node on the Base network. Base is a secure, low-cost, developer-friendly Ethereum Layer 2 (L2) scaling solution built on Optimism's open-source OP Stack.
For detailed architecture information, see Architecture. For instructions on setting up and running a node, see Getting Started.
What is Base Node?
Base Node allows users to run their own node on the Base network, enabling direct access to the Base blockchain without relying on third-party service providers. The repository provides a Docker-based setup that orchestrates the necessary components to synchronize and maintain a local copy of the Base blockchain README.md3-5
Sources: README.md13-39 README.md87-89 versions.json1-31
Key Components
Base Node consists of two primary layers that work in tandem:
- Rollup/Consensus Layer (
op-node): Responsible for deriving the L2 chain by reading data from Ethereum L1 and interacting with the Base sequencer. It manages the consensus logic of the rollup README.md87-100 The specific version is tracked asop_nodein the project configuration versions.json23-30 - Execution Layer: Processes transactions and maintains the state of the Base network. The repository supports multiple clients, selectable via the
CLIENTenvironment variable README.md41-45:- Reth (
base-reth-node): A high-performance Rust implementation (default) README.md43 versions.json2-8 - Geth (
op-geth): The standard Go-based execution client README.md44 versions.json16-22 - Nethermind: A C#/.NET based execution client README.md45 versions.json9-15
- Reth (
For details on how these components interact, see Architecture.
System Requirements
Running a Base node requires high-performance hardware to keep up with the network's throughput.
Sources: README.md49-72
Network Support
The repository supports both production and testing environments through pre-configured environment files:
- Mainnet: Configured via
.env.mainnet, connecting tobase-mainnetand the production sequencerhttps://mainnet-sequencer.base.orgREADME.md104-108 - Testnet: Configured via
.env.sepolia, connecting to the Base Sepolia testnet README.md18-32
For configuration details, see Key Concepts.
Operational Architecture
The following diagram bridges the high-level concepts to the specific code entities and variables used to manage the node's lifecycle.
Sources: README.md13-39 versions.json1-31
Data Flow & Synchronization
Base nodes can synchronize using different modes, including standard rollup derivation from L1 and experimental "Snap Sync" for faster onboarding README.md118-128 The op-node acts as the conductor, fetching data from L1 RPC and Beacon endpoints to guide the execution client README.md87-89 Performance can be tuned via specific cache settings like GETH_CACHE or RETH_FB_WEBSOCKET_URL for Flashblocks README.md111-115 README.md78
For a deep dive into the synchronization process and the role of the L1 Beacon node, see Key Concepts.
