It currently supports Optimism’s open-source OP Stack.
This repository contains the relevant Docker builds to run your own RPC node for Mint Blockchain.
we recommend this configuration to run a node:
- at least 2 Core * 8 GB RAM
- an SSD drive with at least 200 GB free
- setting
OP_NODE_L1_ETH_RPC
. need fully synced. - setting
OP_NODE_L1_BEACON
. need a Beacon RPC.
# .env file
OP_NODE_L1_ETH_RPC=https://eth-mainnet.g.alchemy.com/v2/<your key>
OP_NODE_L1_BEACON=<beacon api rpc>
- Mainnet
docker compose -f docker-compose-mainnet.yml up --build
- Sepolia Testnet
docker compose -f docker-compose-testnet-sepolia.yml up --build
curl -d '{"id":0,"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["latest",false]}' -H "Content-Type: application/json" http://localhost:8545
-
Some L1 nodes (e.g. Erigon) do not support fetching storage proofs. You can work around this by specifying
--l1.trustrpc
when starting op-node (add it inop-node-entrypoint
and rebuild the docker image withdocker compose build
.) Do not do this unless you fully trust the L1 node provider. -
You can map a local data directory for
op-geth
by adding a volume mapping todocker-compose-xxx.yml
:
services:
geth: # this is Optimism's geth client
...
volumes:
- ./geth-data:/data
- Default node type is
archive
. you can change it viaop-geth-entrypoint
.
--gcmode=full
- Archive https://storage.googleapis.com/mint-snapshot/mint-mainnet-archive-snapshot-20250214.tar.zst
- Full https://storage.googleapis.com/mint-snapshot/mint-mainnet-full-snapshot-20250214.tar.zst
mkdir -p ./data/mainnet-geth
# Download latest snapshot tarball
# You can choose one of two ways to download,Using aria2c to download can improve download speed, but you need to install aria2
step1 download
wget -c https://storage.googleapis.com/mint-snapshot/mint-mainnet-archive-snapshot-20250214.tar.zst
step2 unarchive
aria2c -x 16 -s 16 -k 100M https://storage.googleapis.com/mint-mainnet-archive-snapshot-20250214.tar.zst
# unzip snapshot to the ledger path:
tar --use-compress-program=unzstd -xvf mint-mainnet-archive-snapshot-20250214.tar.zst -C ./data/mainnet-geth
Check the data was unarchived successfully:
$ ls ./data/mainnet-geth
chaindata
Sync speed depends on your L1 node, as the majority of the chain is derived from data submitted to the L1. You can check your syncing status using the optimism_syncStatus
RPC on the op-node
container. Example:
command -v jq &> /dev/null || { echo "jq is not installed" 1>&2 ; }
echo Latest synced block behind by: $((($( date +%s )-\
$( curl -s -d '{"id":0,"jsonrpc":"2.0","method":"optimism_syncStatus"}' -H "Content-Type: application/json" http://localhost:7545 | jq -r .result.unsafe_l2.timestamp))/60)) minutes
If you encounter problems with your node, please open a GitHub issue or reach out on our Discord: