157 lines
6.3 KiB
YAML
157 lines
6.3 KiB
YAML
version: '3.1'
|
|
|
|
services:
|
|
erigon-mainnet:
|
|
image: thorax/erigon:v2.48.1
|
|
expose:
|
|
- "16630"
|
|
- "9090"
|
|
- "8545"
|
|
- "8551"
|
|
ports:
|
|
- "16630:16630"
|
|
- "16630:16630/udp"
|
|
volumes:
|
|
- erigon-mainnet:/home/erigon/.local/share/erigon
|
|
- .jwtsecret:/jwtsecret
|
|
networks:
|
|
- chains
|
|
command: >
|
|
--chain mainnet
|
|
--port=16630
|
|
--metrics --metrics.addr=0.0.0.0 --metrics.port=6060
|
|
--private.api.addr=0.0.0.0:9090
|
|
--torrent.upload.rate="1250mb"
|
|
--torrent.download.rate="1250mb"
|
|
--pprof
|
|
--pprof.addr=0.0.0.0
|
|
--pprof.port=6061
|
|
--authrpc.addr=0.0.0.0
|
|
--authrpc.vhosts=*
|
|
--authrpc.jwtsecret=/jwtsecret
|
|
--http.addr=0.0.0.0
|
|
--http.vhosts=*
|
|
--http.corsdomain=*
|
|
--http.api=eth,erigon,web3,net,debug,trace,txpool
|
|
--rpc.returndata.limit=1000000
|
|
--rpc.gascap=5000000000
|
|
--ws
|
|
restart: unless-stopped
|
|
stop_grace_period: 1m
|
|
labels:
|
|
- "prometheus-scrape.enabled=true"
|
|
- "prometheus-scrape.port=6060"
|
|
- "prometheus-scrape.job_name=erigon"
|
|
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.erigon-mainnet-stripprefix.stripprefix.prefixes=/erigon"
|
|
- "traefik.http.services.erigon-mainnet.loadbalancer.server.port=8545"
|
|
- "traefik.http.routers.erigon-mainnet.entrypoints=websecure"
|
|
- "traefik.http.routers.erigon-mainnet.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.erigon-mainnet.rule=Host(`$DOMAIN`) && PathPrefix(`/erigon`)"
|
|
- "traefik.http.routers.erigon-mainnet.middlewares=erigon-mainnet-stripprefix, ipwhitelist"
|
|
|
|
|
|
fireeth-mainnet:
|
|
build:
|
|
context: ./firehose-mainnet/
|
|
command: -c /etc/firehose/config.yml start
|
|
environment:
|
|
- "ETHEREUM_ARCHIVE_RPC=${FIREHOSE_ETHEREUM_ARCHIVE_RPC:-https://rpc-fi-1.stakesquid.eu/erigon}"
|
|
- "S3_BLOCKS_STORE_URL=${FIREHOSE_S3_BLOCKS_STORE_URL:-s3://162.55.135.148:8333/eth-blocks?insecure=true}"
|
|
expose:
|
|
- 8545 # geth rpc
|
|
- 8551 # consensus client
|
|
- 13042 # firehose grpc
|
|
ports:
|
|
- "24465:24465"
|
|
- "24465:24465/udp"
|
|
- "13042:13042"
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.services.firehose-mainnet.loadbalancer.server.scheme=h2c"
|
|
- "traefik.http.services.firehose-mainnet.loadbalancer.server.port=13042"
|
|
- "traefik.http.routers.firehose-mainnet.entrypoints=grpc"
|
|
#- "traefik.http.routers.firehose-mainnet.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.firehose-mainnet.rule=Host(`firehose-mainnet.$DOMAIN`)"
|
|
- "traefik.http.routers.firehose-mainnet.middlewares=ipwhitelist"
|
|
networks:
|
|
- chains
|
|
volumes:
|
|
- "./firehose-mainnet/config.yml:/etc/firehose/config.yml"
|
|
- "geth-mainnet_data:/var/lib/geth"
|
|
- "firehose-mainnet_data:/var/lib/firehose"
|
|
- ".jwtsecret:/jwtsecret"
|
|
restart: unless-stopped
|
|
stop_grace_period: 1m
|
|
|
|
|
|
lighthouse-erigon-mainnet:
|
|
image: sigp/lighthouse:latest-modern
|
|
ports:
|
|
- "18719:18719"
|
|
- "18719:18719/udp"
|
|
volumes:
|
|
- .jwtsecret:/jwtsecret
|
|
- lighthouse-erigon-mainnet_data:/root/.lighthouse
|
|
command: >
|
|
lighthouse beacon_node
|
|
--eth1-endpoints http://erigon-mainnet:8545
|
|
--execution-endpoint http://erigon-mainnet:8551
|
|
--execution-jwt /jwtsecret
|
|
--checkpoint-sync-url https://sync-mainnet.beaconcha.in
|
|
--http
|
|
--http-address 0.0.0.0
|
|
--port 18719
|
|
restart: unless-stopped
|
|
stop_grace_period: 1m
|
|
networks:
|
|
- chains
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.lighthouse-erigon-mainnet-stripprefix.stripprefix.prefixes=/lighthouse-erigon-mainnet"
|
|
- "traefik.http.services.lighthouse-erigon-mainnet.loadbalancer.server.port=5052"
|
|
- "traefik.http.routers.lighthouse-erigon-mainnet.entrypoints=websecure"
|
|
- "traefik.http.routers.lighthouse-erigon-mainnet.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.lighthouse-erigon-mainnet.rule=Host(`$DOMAIN`) && PathPrefix(`/lighthouse-erigon-mainnet`)"
|
|
- "traefik.http.routers.lighthouse-erigon-mainnet.middlewares=lighthouse-erigon-mainnet-stripprefix, ipwhitelist"
|
|
|
|
|
|
lighthouse-fireeth-mainnet:
|
|
image: sigp/lighthouse:latest-modern
|
|
ports:
|
|
- "55031:55031"
|
|
- "55031:55031/udp"
|
|
volumes:
|
|
- .jwtsecret:/jwtsecret
|
|
- lighthouse-fireeth-mainnet_data:/root/.lighthouse
|
|
command: >
|
|
lighthouse beacon_node
|
|
--eth1-endpoints http://fireeth-mainnet:8545
|
|
--execution-endpoint http://fireeth-mainnet:8551
|
|
--execution-jwt /jwtsecret
|
|
--checkpoint-sync-url https://mainnet-checkpoint-sync.attestant.io
|
|
--http
|
|
--http-address 0.0.0.0
|
|
--port 55031
|
|
restart: unless-stopped
|
|
stop_grace_period: 1m
|
|
networks:
|
|
- chains
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.lighthouse-fireeth-mainnet-stripprefix.stripprefix.prefixes=/lighthouse-fireeth-mainnet"
|
|
- "traefik.http.services.lighthouse-fireeth-mainnet.loadbalancer.server.port=5052"
|
|
- "traefik.http.routers.lighthouse-fireeth-mainnet.entrypoints=websecure"
|
|
- "traefik.http.routers.lighthouse-fireeth-mainnet.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.lighthouse-fireeth-mainnet.rule=Host(`$DOMAIN`) && PathPrefix(`/lighthouse-fireeth-mainnet`)"
|
|
- "traefik.http.routers.lighthouse-fireeth-mainnet.middlewares=lighthouse-fireeth-mainnet-stripprefix, ipwhitelist"
|
|
|
|
|
|
volumes:
|
|
erigon-mainnet:
|
|
lighthouse-fireeth-mainnet_data:
|
|
lighthouse-erigon-mainnet_data:
|
|
geth-mainnet_data:
|
|
firehose-mainnet_data:
|