From f21320e667f841990ecd54cd587a1f6ac5139c3c Mon Sep 17 00:00:00 2001 From: Sebastian <379651+czarly@users.noreply.github.com> Date: Tue, 10 Oct 2023 07:08:28 +0200 Subject: [PATCH] make a gnosis fullnode --- nethermind-gnosis.yml | 105 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 nethermind-gnosis.yml diff --git a/nethermind-gnosis.yml b/nethermind-gnosis.yml new file mode 100644 index 00000000..1e359eb9 --- /dev/null +++ b/nethermind-gnosis.yml @@ -0,0 +1,105 @@ +version: '3.1' + +services: + + nethermind-gnosis: + image: nethermind/nethermind:1.21.0 + user: root + volumes: + - "gnosis-nethermind-fullnode:/data" + - .jwtsecret:/jwtsecret + expose: + - "1550" + - "9090" + - "8545" + - "8551" + ports: + - "1550:1550" + - "1550:1550/udp" + restart: unless-stopped + command: | + --config=gnosis + --datadir=/data + --log=INFO + --Sync.SnapSync=false + --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: 1m + 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: