113 lines
4.2 KiB
YAML
113 lines
4.2 KiB
YAML
version: '3.1'
|
|
|
|
services:
|
|
|
|
nethermind-gnosis:
|
|
image: nethermind/nethermind:1.28.0
|
|
user: root
|
|
volumes:
|
|
- "gnosis-nethermind-fullnode:/data"
|
|
- .jwtsecret:/jwtsecret
|
|
expose:
|
|
- "1550"
|
|
- "9090"
|
|
- "8545"
|
|
- "8551"
|
|
ports:
|
|
- "1550:1550"
|
|
- "1550:1550/udp"
|
|
restart: unless-stopped
|
|
environment:
|
|
#- "NETHERMIND_SYNCCONFIG_NONVALIDATORNODE=true"
|
|
##- "NETHERMIND_SYNCCONFIG_PIVOTHASH=0x4d2eedcf61a0b19ca46b6f944e732ef6baef71b9e879912a6ae122a7c4c2bd17"
|
|
##- "NETHERMIND_SYNCCONFIG_PIVOTNUMBER=32299602"
|
|
- "NETHERMIND_SYNCCONFIG_FASTSYNC=true"
|
|
#- "NETHERMIND_SYNCCONFIG_DOWNLOADRECEIPTSINFASTSYNC=false"
|
|
#- "NETHERMIND_SYNCCONFIG_DOWNLOADBODIESINFASTSYNC=false"
|
|
#- "NETHERMIND_SYNCCONFIG_DOWNLOADHEADERSINFASTSYNC=false"
|
|
command: |
|
|
--config=gnosis
|
|
--datadir=/data
|
|
--log=INFO
|
|
--JsonRpc.Enabled=true
|
|
--JsonRpc.Host=0.0.0.0
|
|
--JsonRpc.Port=8545
|
|
--JsonRpc.EnabledModules=[Web3,Eth,Subscribe,Net]
|
|
--JsonRpc.JwtSecretFile=/jwtsecret
|
|
--JsonRpc.EngineHost=0.0.0.0
|
|
--JsonRpc.EnginePort=8551
|
|
--Network.DiscoveryPort=1550
|
|
--HealthChecks.Enabled=false
|
|
--Pruning.CacheMb=2048
|
|
stop_grace_period: 3m
|
|
labels:
|
|
- "prometheus-scrape.enabled=true"
|
|
- "prometheus-scrape.port=6060"
|
|
- "prometheus-scrape.job_name=nethermind"
|
|
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.nethermind-gnosis-stripprefix.stripprefix.prefixes=/gnosis"
|
|
- "traefik.http.services.nethermind-gnosis.loadbalancer.server.port=8545"
|
|
- "traefik.http.routers.nethermind-gnosis.entrypoints=websecure"
|
|
- "traefik.http.routers.nethermind-gnosis.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.nethermind-gnosis.rule=Host(`$DOMAIN`) && PathPrefix(`/gnosis`)"
|
|
- "traefik.http.routers.nethermind-gnosis.middlewares=nethermind-gnosis-stripprefix, ipwhitelist"
|
|
networks:
|
|
- chains
|
|
logging:
|
|
options:
|
|
max-file: '1'
|
|
compress: 'false'
|
|
driver: local
|
|
|
|
|
|
nimbus-gnosis:
|
|
build:
|
|
context: ./gnosis/nimbus
|
|
restart: unless-stopped
|
|
stop_grace_period: 1m
|
|
user: root
|
|
volumes:
|
|
- nimbus-gnosis:/data
|
|
- .jwtsecret:/jwt:ro
|
|
environment:
|
|
CHECKPOINT_SYNC_URL: "https://checkpoint.gnosischain.com/"
|
|
command: |
|
|
--data-dir=/data
|
|
--web3-url=http://nethermind-gnosis:8551
|
|
--jwt-secret=/jwt
|
|
--light-client-data-serve=true
|
|
--light-client-data-import-mode=full
|
|
--tcp-port=54356
|
|
--udp-port=54356
|
|
--rest
|
|
--rest-address=0.0.0.0
|
|
--network=gnosis
|
|
--history=prune
|
|
networks:
|
|
- chains
|
|
ports:
|
|
- 54356:54356/tcp # p2p
|
|
- 54356:54356/udp # p2p
|
|
expose:
|
|
- 8008 # metrics
|
|
- 4500 # http
|
|
- 54356 # p2p
|
|
labels:
|
|
- "prometheus-scrape.enabled=true"
|
|
- "prometheus-scrape.port=8008"
|
|
- "prometheus-scrape.job_name=nimbus-gnosis"
|
|
- "prometheus-scrape.metrics_path=/metrics"
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.nimbus-gnosis-stripprefix.stripprefix.prefixes=/nimbus-gnosis"
|
|
- "traefik.http.services.nimbus-gnosis.loadbalancer.server.port=4500"
|
|
- "traefik.http.routers.nimbus-gnosis.entrypoints=websecure"
|
|
- "traefik.http.routers.nimbus-gnosis.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.nimbus-gnosis.rule=Host(`$DOMAIN`) && PathPrefix(`/nimbus-gnosis`)"
|
|
- "traefik.http.routers.nimbus-gnosis.middlewares=nimbus-gnosis-stripprefix, ipwhitelist"
|
|
|
|
|
|
volumes:
|
|
gnosis-nethermind-fullnode:
|
|
nimbus-gnosis:
|