82 lines
3.4 KiB
YAML
82 lines
3.4 KiB
YAML
|
|
|
|
services:
|
|
ethereum-mainnet:
|
|
image: 'ethereum/client-go:${GETH_VERSION:-v1.15.5}'
|
|
|
|
sysctls:
|
|
net.ipv4.tcp_slow_start_after_idle: 0
|
|
net.ipv4.tcp_no_metrics_save: 1
|
|
expose:
|
|
- 8545
|
|
- 8551
|
|
ports:
|
|
- "10023:10023"
|
|
- "10023:10023/udp"
|
|
environment:
|
|
- "GETH_DATADIR=/data"
|
|
- "GETH_MAINNET=true"
|
|
- "GETH_GCMODE=full"
|
|
- "GETH_SYNCMODE=snap"
|
|
- "GETH_STATE_SCHEME=path"
|
|
- "GETH_DB_ENGINE=pebble"
|
|
- "GETH_NAT=extip:${IP}"
|
|
- "GETH_PORT=19809"
|
|
- "GETH_WS_PORT=8545"
|
|
- "GETH_HTTP=true"
|
|
- "GETH_HTTP_ADDR=0.0.0.0"
|
|
- "GETH_HTTP_VHOSTS=*"
|
|
- "GETH_WS=true"
|
|
- "GETH_WS_ADDR=0.0.0.0"
|
|
- "GETH_WS_ORIGINS=*"
|
|
- "GETH_HTTP_API=eth,net,debug,admin,web3"
|
|
- "GETH_AUTHRPC_JWTSECRET=/jwtsecret"
|
|
- "GETH_AUTHRPC_ADDR=0.0.0.0"
|
|
- "GETH_AUTHRPC_VHOSTS=*"
|
|
networks:
|
|
- chains
|
|
volumes:
|
|
- "ethereum-mainnet-geth-pruned-pebble-path:/data"
|
|
- ".jwtsecret:/jwtsecret:ro"
|
|
restart: unless-stopped
|
|
stop_grace_period: 1m
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.ethereum-mainnet-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/ethereum-mainnet"
|
|
- "traefik.http.services.ethereum-mainnet-geth-pruned-pebble-path.loadbalancer.server.port=8545"
|
|
- "traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path.entrypoints=websecure"
|
|
- "traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/ethereum-mainnet`)"
|
|
- "traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path.middlewares=ethereum-mainnet-geth-pruned-pebble-path-stripprefix, ipwhitelist"
|
|
|
|
ethereum-mainnet-node:
|
|
image: prysmaticlabs/prysm-beacon-chain:${PRYSM_VERSION:-v5.3.1}
|
|
ports:
|
|
- "15023:15023"
|
|
- "15023:15023/udp"
|
|
command:
|
|
[
|
|
"--mainnet",
|
|
"--datadir=/data",
|
|
"--jwt-secret=/jwtsecret",
|
|
"--rpc-host=0.0.0.0",
|
|
"--grpc-gateway-host=0.0.0.0",
|
|
"--monitoring-host=0.0.0.0",
|
|
"--p2p-tcp-port=15023",
|
|
"--p2p-udp-port=15023",
|
|
"--checkpoint-sync-url=https://sync-mainnet.beaconcha.in",
|
|
"--execution-endpoint=http://ethereum-mainnet:8551",
|
|
"--enable-historical-state-representation=false",
|
|
"--beacon-db-pruning",
|
|
"--accept-terms-of-use"
|
|
]
|
|
networks:
|
|
- chains
|
|
volumes:
|
|
- "ethereum-mainnet-geth-pruned-pebble-path_prysm:/data"
|
|
- ".jwtsecret:/jwtsecret:ro"
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
ethereum-mainnet-geth-pruned-pebble-path:
|
|
ethereum-mainnet-geth-pruned-pebble-path_prysm: |