84 lines
2.9 KiB
YAML
84 lines
2.9 KiB
YAML
services:
|
|
gnosis-erigon3-init:
|
|
image: alpine:latest
|
|
entrypoint: ["/bin/sh", "-c"]
|
|
command: rm /datadir/nodekey
|
|
volumes:
|
|
- "${GNOSIS_MAINNET_ERIGON3_ARCHIVE_TRACE_DATA:-gnosis-mainnet-erigon3-archive-trace}:/datadir"
|
|
init: true
|
|
|
|
gnosis-erigon3:
|
|
image: erigontech/erigon:${ERIGON3_VERSION:-v3.0.0-rc2}
|
|
depends_on:
|
|
- gnosis-erigon3-init
|
|
user: root
|
|
volumes:
|
|
- "${GNOSIS_MAINNET_ERIGON3_ARCHIVE_TRACE_DATA:-gnosis-mainnet-erigon3-archive-trace}:/datadir"
|
|
- .jwtsecret:/jwtsecret
|
|
expose:
|
|
- "20947"
|
|
- "9090"
|
|
- "8545"
|
|
- "8551"
|
|
ports:
|
|
- "20947:20947"
|
|
- "20947:20947/udp"
|
|
- "28806:28806"
|
|
- "28806:28806/udp"
|
|
- "16393:16393"
|
|
- "16393:16393/udp"
|
|
- "17938:17938"
|
|
- "17938:17938/udp"
|
|
restart: unless-stopped
|
|
command: >
|
|
--chain=gnosis
|
|
--prune.mode=archive
|
|
--authrpc.addr=0.0.0.0
|
|
--authrpc.vhosts=*
|
|
--authrpc.jwtsecret=/jwtsecret
|
|
--http
|
|
--http.addr=0.0.0.0
|
|
--http.port=8545
|
|
--http.compression
|
|
--http.vhosts='*'
|
|
--http.corsdomain='*'
|
|
--http.api=eth,debug,net,trace,web3,erigon
|
|
--ws
|
|
--ws.compression
|
|
--rpc.gascap=300000000
|
|
--metrics
|
|
--metrics.addr=0.0.0.0
|
|
--metrics.port=6060
|
|
--bodies.cache=5G
|
|
--rpc.batch.limit=200000
|
|
--batchSize=2048MB
|
|
--port=20947
|
|
--datadir=/datadir
|
|
--ethash.dagdir=/datadir/ethash
|
|
--rpc.returndata.limit=1000000
|
|
--p2p.protocol=66
|
|
--p2p.protocol 67
|
|
--p2p.protocol 68
|
|
--p2p.allowed-ports 28806
|
|
--p2p.allowed-ports 16393
|
|
--p2p.allowed-ports 17938
|
|
--nat extip:${IP}
|
|
stop_grace_period: 1m
|
|
environment:
|
|
- "IP=${IP}"
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.gnosis-mainnet-erigon3-archive-trace-stripprefix.stripprefix.prefixes=/gnosis-erigon"
|
|
- "traefik.http.services.gnosis-mainnet-erigon3-archive-trace.loadbalancer.server.port=8545"
|
|
- "${NO_SSL:-traefik.http.routers.gnosis-mainnet-erigon3-archive-trace.entrypoints=websecure}"
|
|
- "${NO_SSL:-traefik.http.routers.gnosis-mainnet-erigon3-archive-trace.tls.certresolver=myresolver}"
|
|
- "${NO_SSL:-traefik.http.routers.gnosis-mainnet-erigon3-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/gnosis-erigon`)}"
|
|
- "${NO_SSL:+traefik.http.routers.gnosis-mainnet-erigon3-archive-trace.rule=PathPrefix(`/gnosis-erigon`)}"
|
|
- "traefik.http.routers.gnosis-mainnet-erigon3-archive-trace.middlewares=gnosis-mainnet-erigon3-archive-trace-stripprefix, ipwhitelist"
|
|
networks:
|
|
- chains
|
|
|
|
volumes:
|
|
gnosis-mainnet-erigon3-archive-trace:
|
|
|