🐳Docker
Authors: [ Ankur | Dapplooker]
System Requirements
CPU
OS
RAM
DISK
8 vCPU
Ubuntu 22.04
16 GB
500 GB
The Chapel node has a size of 463 GB on 25, March, 2025.
Pre-requisite
Before starting, clean the setup then update and upgrade. Install following:
Docker
Commands
sudo apt update -y && sudo apt upgrade -y && sudo apt auto-remove -y
sudo apt install docker.io ufw -y jq -y
Firewall Settings
Check status & enable UFW
sudo ufw enable
sudo ufw status verbose
Set explicit default UFW rules
sudo ufw default deny incoming
sudo ufw default allow outgoing
Allow SSH, HTTP, and HTTPS
sudo ufw allow 22/tcp
sudo ufw allow 80
sudo ufw allow 443
Allow Remote connection
sudo ufw allow from ${REMOTE.HOST.IP} to any port 8545
Setup Instructions
1
2
Create docker compose file
Create project directory
mkdir /mnt/erigon-bsc/
Create docker-compose.yml file
version: '3.8'
services:
bsc-erigon:
container_name: bsc-erigon
image: ghcr.io/node-real/bsc-erigon:v1.3.2-beta2
restart: on-failure
user: root
volumes:
- /mnt/erigon-bsc:/root/data/bsc-erigon
ports:
- "8545:8545" # HTTP RPC
- "8546:8546" # WebSocket
- "30303:30303" # P2P TCP
- "30303:30303/udp" # P2P UDP
- "42069:42069" # Torrent Port
- "6060:6060" # Metrics
- "6061:6061" # PProf Debugging
- "9090:9090" # Private API
- "8551:8551" # Auth RPC
command:
- --private.api.addr=127.0.0.1:9090
- --chain=chapel
- --prune.mode=archive
- --torrent.download.rate=1g
- --torrent.download.slots=400
- --batchSize=2g
- --bsc.blobSidecars.no-pruning=true
- --txpool.disable
- --metrics
- --metrics.addr=0.0.0.0
- --metrics.port=6060
- --pprof
- --pprof.addr=0.0.0.0
- --pprof.port=6061
- --authrpc.jwtsecret=/root/data/bsc-erigon/jwt.hex
- --authrpc.port=8551
- --datadir=/root/data/bsc-erigon/
- --http.addr=0.0.0.0
- --http.port=8545
- --http.api=eth,debug,net,trace,web3,erigon,bsc,admin
- --http.vhosts=any
- --http.corsdomain=*
- --ws
- --ws.port=8546
- --torrent.port=42069
- --nat=extip:157.90.180.249
- --db.pagesize=16k
- --db.size.limit=3t
- --port=30303
ulimits:
nofile:
soft: 500000
hard: 500000
Monitoring
Monitor Logs of Docker Container
docker ps
docker logs bsc-erigon
Might need to restart the container if snapshot download stuck for a longer duration. Total time required to sync is ~28 hr
Sync Status
Latest Block
curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' http://localhost:8545
Response should look like:
{"jsonrpc":"2.0","id":1,"result":"0x2f19521"}
REFERENCES
Last updated