Files
ethereum-rpc-docker/thundercore/thunder/thundercore-zeus-thunder-pruned-leveldb-hash.yml
squidbear 2a5def2334 fix
2025-03-31 10:40:43 +02:00

49 lines
2.0 KiB
YAML

# todo: figure out how to pass the external IP to the client
# todo: automatically initialize from snapshot
services:
thundercore-zeus:
image: thundercore/thunder:r4.1.3
stop_grace_period: 5m
ulimits:
nofile: 1048576
expose:
- "8545"
ports:
- "10645:10645/tcp"
- "10645:10645/udp"
volumes:
- thundercore-zeus-thunder-pruned-leveldb-hash:/datadir
- ./thundercore/zeus:/config
networks:
- chains
entrypoint: [ "/sbin/tini", "--", "/entrypoint.sh", "--logToConsole" ]
environment:
CONFIG_PATH: /config
PORT: 10645
SNAPSHOT_CMD: 'wget -c "$(wget -q -O - https://chaindata-backup-prod-zeus-us-east-1.s3.amazonaws.com/zeus-latest)" -O - | tar -C /datadir -zx'
restart: unless-stopped
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.thundercore-zeus-thunder-pruned-leveldb-hash-stripprefix.stripprefix.prefixes=/thundercore-zeus"
- "traefik.http.services.thundercore-zeus-thunder-pruned-leveldb-hash.loadbalancer.server.port=8545"
- "traefik.http.routers.thundercore-zeus-thunder-pruned-leveldb-hash.entrypoints=websecure"
- "traefik.http.routers.thundercore-zeus-thunder-pruned-leveldb-hash.tls.certresolver=myresolver"
- "traefik.http.routers.thundercore-zeus-thunder-pruned-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/thundercore-zeus`)"
- "traefik.http.routers.thundercore-zeus-thunder-pruned-leveldb-hash.middlewares=thundercore-zeus-thunder-pruned-leveldb-hash-stripprefix, ipwhitelist"
thundercore-zeus-download:
image: alpine:latest
user: root
environment:
- SNAPSHOT_URL=https://chaindata-backup-prod-zeus-us-east-1.s3.amazonaws.com/zeus-latest
volumes:
- thundercore-zeus-thunder-pruned-leveldb-hash:/datadir
- ./thundercore/scripts/download.thunder.sh:/download.sh
command: sh -c "/download.sh"
restart: "no"
profiles:
- manual
volumes:
thundercore-zeus-thunder-pruned-leveldb-hash: