82 lines
3.2 KiB
YAML
82 lines
3.2 KiB
YAML
|
|
|
|
services:
|
|
ethereum-mainnet:
|
|
image: erigontech/erigon:${ERIGON3_VERSION:-v3.0.0}
|
|
user: root
|
|
expose:
|
|
- "9090"
|
|
- "8545"
|
|
ports:
|
|
- "10616:10616"
|
|
- "10616:10616/udp"
|
|
- "25616:25616"
|
|
- "25616:25616/udp"
|
|
- "30616:30616"
|
|
- "30616:30616/udp"
|
|
- "15616:15616"
|
|
- "15616:15616/udp"
|
|
- "20616:20616"
|
|
- "20616:20616/udp"
|
|
environment:
|
|
- "IP=${IP}"
|
|
volumes:
|
|
- ethereum-mainnet-erigon3-pruned-trace:/root/.local/share/erigon
|
|
- /slowdisk:/slowdisk
|
|
networks:
|
|
- chains
|
|
|
|
entrypoint: ["/bin/sh", "-c", "exec erigon \"$@\""]
|
|
command: >
|
|
--chain=mainnet
|
|
--prune.mode=full
|
|
--port=10616
|
|
--p2p.allowed-ports=25616
|
|
--p2p.allowed-ports=30616
|
|
--metrics --metrics.addr=0.0.0.0 --metrics.port=6060
|
|
--private.api.addr=0.0.0.0:9090
|
|
--nat=extip:${IP}
|
|
--pprof
|
|
--pprof.addr=0.0.0.0
|
|
--pprof.port=6061
|
|
--http.addr=0.0.0.0
|
|
--http.vhosts=*
|
|
--http.corsdomain=*
|
|
--http.api=eth,erigon,web3,net,debug,trace,txpool
|
|
--rpc.returndata.limit=1100000
|
|
--rpc.gascap=5000000000
|
|
--ws.port=8545
|
|
--ws
|
|
--torrent.upload.rate="1250mb"
|
|
--torrent.download.rate="1250mb"
|
|
--torrent.port=20616
|
|
|
|
--beacon.api.port=5555
|
|
--beacon.api.addr=0.0.0.0
|
|
--beacon.api.cors.allow-origins=*
|
|
--caplin.discovery.addr=0.0.0.0
|
|
--caplin.discovery.port=15616
|
|
--caplin.discovery.tcpport=15616
|
|
--beacon.api=beacon,builder,debug,lighthouse,node,validator,config
|
|
|
|
restart: unless-stopped
|
|
stop_grace_period: 1m
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.ethereum-mainnet-erigon3-pruned-trace-stripprefix.stripprefix.prefixes=/ethereum-mainnet"
|
|
- "traefik.http.services.ethereum-mainnet-erigon3-pruned-trace.loadbalancer.server.port=8545"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace.entrypoints=websecure"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/ethereum-mainnet`)"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace.middlewares=ethereum-mainnet-erigon3-pruned-trace-stripprefix, ipwhitelist"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace.service=ethereum-mainnet-erigon3-pruned-trace"
|
|
|
|
- "traefik.http.services.ethereum-mainnet-erigon3-pruned-trace-node.loadbalancer.server.port=5555"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace-node.entrypoints=websecure"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace-node.service=ethereum-mainnet-erigon3-pruned-trace-node"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace-node.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace-node.rule=Host(`$DOMAIN`) && PathPrefix(`/ethereum-mainnet/eth`)"
|
|
- "traefik.http.routers.ethereum-mainnet-erigon3-pruned-trace-node.middlewares=ethereum-mainnet-erigon3-pruned-trace-stripprefix, ipwhitelist"
|
|
volumes:
|
|
ethereum-mainnet-erigon3-pruned-trace:
|