Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 22 additions & 25 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -2,34 +2,33 @@
# ↓ REQUIRED ↓ #
###############################################################################

# Current status: this template matches the repository's current op-geth-based
# stack. Optimism says op-geth support ends on May 31, 2026 and Glamsterdam
# will require op-reth. op-node is not being deprecated, but this template does
# not yet include an op-reth execution path.
# For long-lived nodes, treat this as the current stack only and plan an
# op-reth migration window now.

# Recommended first run for the current op-geth-based stack: ink-sepolia + full
# Network to run: ink-mainnet or ink-sepolia.
NETWORK_NAME=ink-sepolia

# "full" starts from an empty datadir. This is the recommended first run.
# "archive" restores from a per-network geth snapshot pointer during
# bedrock-init and needs much more disk. If the snapshot lookup fails, switch
# back to full.
# "full" prunes old state and starts from the latest full op-reth snapshot.
# "archive" keeps all history and starts from the latest archive snapshot.
# Snapshots are downloaded from https://snapshots.optimism.io/ on first run.
NODE_TYPE=full

# For a quick Sepolia smoke test, these public endpoints worked during docs
# validation:
# - https://ethereum-sepolia-rpc.publicnode.com
# - https://ethereum-sepolia-beacon-api.publicnode.com
# For a long-running node, use a provider with higher rate limits.
# After the snapshot is restored, op-node derives the chain from L1 starting at
# the snapshot date (up to about a week back). Use an L1 provider that serves
# receipts for old blocks (eth_getBlockReceipts) and has high rate limits.
# Free public endpoints were tested against Ink Sepolia and are not enough:
# - ethereum-sepolia-rpc.publicnode.com returns no receipts for older blocks
# - sepolia.gateway.tenderly.co returns 429 Too Many Requests
# - sepolia.drpc.org only allows batches of 3 (set OP_NODE_L1_RPC_MAX_BATCH_SIZE=3)
# and still catches up slower than the chain advances

# L1 execution RPC endpoint for the matching Ethereum network
OP_NODE__RPC_ENDPOINT=

# L1 beacon API endpoint for the matching Ethereum network
OP_NODE__L1_BEACON=

# Optional: cap op-node's L1 batch request size for providers that limit
# batches (default 20). Read directly by op-node; op-reth ignores it.
# OP_NODE_L1_RPC_MAX_BATCH_SIZE=3

# Use "basic" for generic providers. Other supported values are alchemy,
# quicknode, and erigon.
OP_NODE__RPC_TYPE=basic
Expand All @@ -47,26 +46,24 @@ HEALTHCHECK__REFERENCE_RPC_PROVIDER=https://rpc-gel-sepolia.inkonchain.com
IMAGE_TAG__HEALTHCHECK=
IMAGE_TAG__PROMETHEUS=
IMAGE_TAG__GRAFANA=
IMAGE_TAG__INFLUXDB=

# Exposed host ports (must be unique). Set these only if the defaults clash.
PORT__HEALTHCHECK_METRICS=
PORT__PROMETHEUS=
PORT__GRAFANA=
PORT__INFLUXDB=
PORT__OP_GETH_HTTP=
PORT__OP_GETH_WS=
PORT__OP_GETH_P2P=
PORT__OP_RETH_HTTP=
PORT__OP_RETH_WS=
PORT__OP_RETH_P2P=
# PORT__OP_NODE_P2P changes the published host port. The in-container
# op-node listener still uses 9003.
PORT__OP_NODE_P2P=
PORT__OP_NODE_HTTP=

# Advanced wrapper inputs shared by the shell entrypoints. Leave blank unless
# you know you need them.
# OVERRIDE_HOLOCENE appends --override.holocene=<value> in both wrappers.
# OVERRIDE_HOLOCENE appends --override.holocene=<value> to op-node only.
OVERRIDE_HOLOCENE=

# EXTENDED_ARG is appended verbatim to both start commands. Only use flags that
# are valid for the process you want to affect.
# EXTENDED_ARG is appended verbatim to both start commands (op-node and
# op-reth). Only use flags that are valid for the process you want to affect.
EXTENDED_ARG=
Loading
Loading