From f710a2904cc19a642890c07b8b0d0ac9e91e9886 Mon Sep 17 00:00:00 2001 From: Sebastian <379651+czarly@users.noreply.github.com> Date: Fri, 18 Aug 2023 06:46:20 +0200 Subject: [PATCH] try geth instead --- erigon-linea.yml | 54 ++++++++++++++++++++++++++++++++ linea/erigon/.#Dockerfile | 1 - linea/geth/Dockerfile | 5 +++ linea/geth/scripts/entrypoint.sh | 15 +++++++++ 4 files changed, 74 insertions(+), 1 deletion(-) delete mode 120000 linea/erigon/.#Dockerfile create mode 100644 linea/geth/Dockerfile create mode 100644 linea/geth/scripts/entrypoint.sh diff --git a/erigon-linea.yml b/erigon-linea.yml index f06e3de3..6e05ccf1 100644 --- a/erigon-linea.yml +++ b/erigon-linea.yml @@ -62,5 +62,59 @@ services: - "traefik.http.routers.erigon-linea.rule=Host(`$DOMAIN`) && PathPrefix(`/linea`)" - "traefik.http.routers.erigon-linea.middlewares=erigon-linea-stripprefix, ipwhitelist" + + geth-linea: + image: ethereum/client-go:v1.12.2 + expose: + # HTTP server / GraphQL API + - 8545 + ports: + - "63017:63017" + - "63017:63017/udp" + command: + [ + "--port=63017", + "--graphql", + "--graphql.vhosts=*", + "--networkid 59144", + "--miner.gasprice 1000000000", + "--miner.gaslimit '0x3A2C940'", + "--rpc.allow-unprotected-txs", + "--txpool.accountqueue 50000", + "--txpool.globalqueue 50000", + "--txpool.globalslots 50000", + "--txpool.pricelimit 1000000000", + "--rpc.txfeecap 100", + "--gpo.maxprice 100000000000000", + "--txpool.nolocals", + "--http --http.addr '0.0.0.0' --http.port 8545 --http.corsdomain '*' --http.api 'web3,eth,txpool,net' --http.vhosts='*'", + "--ws --ws.addr '0.0.0.0' --ws.port 8545 --ws.origins '*' --ws.api 'eth,net,web3,txpool'", + "--bootnodes \"enode://ca2f06aa93728e2883ff02b0c2076329e475fe667a48035b4f77711ea41a73cf6cb2ff232804c49538ad77794185d83295b57ddd2be79eefc50a9dd5c48bbb2e@3.128.49.168:30303,enode://eef91d714494a1ceb6e06e5ce96fe5d7d25d3701b2d2e68c042b33d5fa0e4bf134116e06947b3f40b0f22db08f104504dd2e5c790d8bcbb6bfb1b7f4f85313ec@3.130.182.201:30303,enode://cfd472842582c422c7c98b0f2d04c6bf21d1afb2c767f72b032f7ea89c03a7abdaf4855b7cb2dc9ae7509836064ba8d817572cf7421ba106ac87857836fa1d1b@3.136.114.192:30303\"", + "--syncmode full --pruning archive", + "--metrics --pprof --metrics.addr \"0.0.0.0\"", + "--verbosity 3", + ] + networks: + - chains + volumes: + - geth-linea_data:/root/.ethereum + - ./linea/shared:/configs/mainnet/shared + restart: unless-stopped + stop_grace_period: 1m + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.linea-stripprefix.stripprefix.prefixes=/linea" + - "traefik.http.services.linea.loadbalancer.server.port=8545" + - "traefik.http.routers.linea.entrypoints=websecure" + - "traefik.http.routers.linea.tls.certresolver=myresolver" + - "traefik.http.routers.linea.rule=Host(`$DOMAIN`) && PathPrefix(`/linea`)" + - "traefik.http.routers.linea.middlewares=linea-stripprefix, ipwhitelist" + - "prometheus-scrape.enabled=true" + - "prometheus-scrape.port=6060" + - "prometheus-scrape.job_name=geth-linea" + - "prometheus-scrape.metrics_path=/debug/metrics/prometheus" + + + volumes: erigon-linea: diff --git a/linea/erigon/.#Dockerfile b/linea/erigon/.#Dockerfile deleted file mode 120000 index a891fde6..00000000 --- a/linea/erigon/.#Dockerfile +++ /dev/null @@ -1 +0,0 @@ -root@shell.2982311:1653235805 \ No newline at end of file diff --git a/linea/geth/Dockerfile b/linea/geth/Dockerfile new file mode 100644 index 00000000..019295a0 --- /dev/null +++ b/linea/geth/Dockerfile @@ -0,0 +1,5 @@ +FROM ethereum/client-go:v1.12.2 + +COPY ./scripts/entrypoint.sh /usr/local/bin/entrypoint.sh +RUN chmod u+x /usr/local/bin/entrypoint.sh +ENTRYPOINT [ "/usr/local/bin/entrypoint.sh" ] diff --git a/linea/geth/scripts/entrypoint.sh b/linea/geth/scripts/entrypoint.sh new file mode 100644 index 00000000..a7acfcc8 --- /dev/null +++ b/linea/geth/scripts/entrypoint.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +# exit script on any error +set -e + +GETH_HOME=/root/.ethereum + +if [ ! -f "${ERIGON_HOME}/bootstrapped" ]; +then + echo "write the custom genesis block" + mkdir -p ${GETH_HOME:-/root/.ethereum} + geth --datadir ${GETH_HOME:-/root/.ethereum} init /configs/mainnet/shared/genesis.json +fi + +exec geth $@