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.
-
Ensure you have an Ethereum L1 full node RPC and beacon endpoint available.
-
Choose your network:
- For mainnet: use
.env.mainnet - For testnet: use
.env.sepolia
- For mainnet: use
-
Configure your L1 endpoints in the appropriate
.envfile:BASE_NODE_L1_ETH_RPC=<your-preferred-l1-rpc> BASE_NODE_L1_BEACON=<your-preferred-l1-beacon>
-
Start the node:
# For mainnet (default): docker compose up --build # For testnet: NETWORK_ENV=.env.sepolia docker compose up --build
- Execution:
base-reth-node - Consensus:
base-consensus
- 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
The following are the hardware specifications we use in production:
- Instance: AWS i7i.12xlarge
- Storage: RAID 0 of all local NVMe drives (
/dev/nvme*) - Filesystem: ext4
BASE_NODE_L1_ETH_RPC: your Ethereum L1 node RPC endpointBASE_NODE_L1_BEACON: your L1 beacon node endpointBASE_NODE_NETWORK:baseorbase-sepoliaRETH_CHAIN:baseorbase-sepolia
- Mainnet:
RETH_CHAIN=baseBASE_NODE_NETWORK=base- Sequencer:
https://mainnet-sequencer.base.org
- Sepolia:
RETH_CHAIN=base-sepoliaBASE_NODE_NETWORK=base-sepolia- Sequencer:
https://sepolia-sequencer.base.org
- 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.
When running in Flashblocks mode, you can query a pending block using the Flashblocks RPC:
curl -X POST \
--data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["pending", false],"id":1}' \
http://localhost:8545Snapshots 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.
| Network | Status |
|---|---|
| Mainnet | ✅ |
| Testnet | ✅ |
For support please join our Discord and post in 🛠|node-operators. You can alternatively open a new GitHub issue.
THE NODE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. We make no guarantees about asset protection or security. Usage is subject to applicable laws and regulations.
For more information, visit docs.base.org.
