Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Configuration

Environment Variables

When running with Docker Compose, configuration is done through the .env file. Copy .env.example and edit:

VariableRequiredDefaultDescription
PARENT_CHAIN_RPC_URLYes-Ethereum L1 RPC endpoint (Sepolia for testnet)
PARENT_CHAIN_BEACON_URLYes-Ethereum Beacon API endpoint
CHAIN_IDNo421614Arbitrum chain ID (421614 = Sepolia)
NITRO_IMAGENooffchainlabs/nitro-node:v3.10.0-rc.2-746bda2Consensus node Docker image
FEED_URLNowss://sepolia-rollup.arbitrum.io/feedSequencer feed for faster sync
LOG_LEVELNoWARNConsensus node log level (TRACE/DEBUG/INFO/WARN/ERROR)
RUST_LOGNowarnExecution client log level
DATA_DIRNoDocker volumeHost path for execution data
NITRO_DATA_DIRNoDocker volumeHost path for consensus data

CLI Options

ArbReth inherits all of reth's CLI options. The most commonly used:

Node

arb-reth node [OPTIONS]
FlagDescription
--chain <PATH>Path to chain genesis JSON
--datadir <PATH>Database directory
--httpEnable HTTP JSON-RPC server
--http.addr <ADDR>HTTP listen address (default: 127.0.0.1)
--http.port <PORT>HTTP port (default: 8545)
--http.api <APIS>Comma-separated API namespaces (eth,web3,net,debug)
--authrpc.addr <ADDR>Engine API listen address
--authrpc.port <PORT>Engine API port (default: 8551)
--authrpc.jwtsecret <PATH>Path to JWT secret file
--disable-discoveryDisable P2P discovery (recommended for Arbitrum)
--rollup.sequencerEnable sequencer mode

Database

FlagDescription
--db.exclusive=trueExclusive database access (recommended)
--db.growth-step <SIZE>MDBX growth step (e.g., 4GB)
--db.log-level <LEVEL>Database log level
--db.sync-mode <MODE>Sync mode (safe-no-sync for performance)

Logging

FlagDescription
--log.stdout.filter <FILTER>Log filter for stdout (e.g., warn, info, debug)

Genesis Files

ArbReth ships with genesis configurations in the genesis/ directory:

  • genesis/arbitrum-sepolia.json - Arbitrum Sepolia testnet

The genesis file contains the initial chain configuration, alloc entries for precompile contracts, and the ArbOS state initialization at the ArbOS state address (0xa4b05...).

Key Genesis Parameters

FieldValueMeaning
chainId421614Arbitrum Sepolia
difficulty1Constant (proof-of-authority)
baseFeePerGas100 GweiInitial L2 base fee
gasLimitVery largeArbitrum manages gas limits through ArbOS
mixHashEncodes ArbOS v10Initial ArbOS version embedded in header