move the init for geth to a init container

This commit is contained in:
goldsquid
2026-06-06 09:27:23 +07:00
parent 19739b5c34
commit 1390b47bb8
3 changed files with 63 additions and 3 deletions

View File

@@ -29,6 +29,23 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services:
hashkeychain-testnet-archive-geth-init:
image: ${HASHKEYCHAIN_GETH_IMAGE:-us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth}:${HASHKEYCHAIN_TESTNET_GETH_VERSION:-v1.101702.2}
user: root
entrypoint: [/bin/sh, -c]
command:
- |
mkdir -p /config
[ -f /config/genesis.json ] || curl -fsSL -o /config/genesis.json "https://hashkeychain.s3.ap-southeast-1.amazonaws.com/testnet/genesis.json"
geth --db.engine= --gcmode=archive --datadir /data init --state.scheme= /config/genesis.json
restart: no
networks:
- chains
volumes:
- ${HASHKEYCHAIN_TESTNET_OP_GETH_ARCHIVE_LEVELDB_HASH_DATA:-hashkeychain-testnet-op-geth-archive-leveldb-hash}:/data
- ./op/hashkeychain/testnet:/config
logging: *logging-defaults
hashkeychain-testnet-archive:
image: ${HASHKEYCHAIN_GETH_IMAGE:-us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth}:${HASHKEYCHAIN_TESTNET_GETH_VERSION:-v1.101702.2}
sysctls:
@@ -56,7 +73,7 @@ services:
- GETH_BOOTNODES=enode://0492e74fb10579a3c53a327ee42dc70db35e7e0aebd73793a806afccb86b30acecb8fe9d024e06bb3fd154c678926d884df3ae696c71adcbf1339a5762e19c4d@testnet-bootnodes.hsk.xyz:30303,enode://dba82c6b384844a00a54ecdfcb34c209ea714072558db80512d4c65e760846d054cf3f58a826cba33b6b410498559b7e41b147dfa487f8cba3d25d2b5bb9e7bc@testnet-bootnodes.hsk.xyz:30304
- GETH_ROLLUP_DISABLETXPOOLGOSSIP=true
- GETH_ROLLUP_SEQUENCERHTTP=https://testnet.hsk.xyz
entrypoint: /bin/sh -c 'mkdir -p /config && [ ! -f /config/genesis.json ] && wget -qO /config/genesis.json "https://hashkeychain.s3.ap-southeast-1.amazonaws.com/testnet/genesis.json"; [ -f /config/genesis.json ] && geth --gcmode=archive --db.engine=leveldb --datadir /data init --state.scheme=hash /config/genesis.json; exec geth "$@"' --
entrypoint: /bin/sh -c 'exec geth "$@"' --
command:
- --bootnodes=enode://0492e74fb10579a3c53a327ee42dc70db35e7e0aebd73793a806afccb86b30acecb8fe9d024e06bb3fd154c678926d884df3ae696c71adcbf1339a5762e19c4d@testnet-bootnodes.hsk.xyz:30303,enode://dba82c6b384844a00a54ecdfcb34c209ea714072558db80512d4c65e760846d054cf3f58a826cba33b6b410498559b7e41b147dfa487f8cba3d25d2b5bb9e7bc@testnet-bootnodes.hsk.xyz:30304
- --datadir=/data
@@ -88,6 +105,9 @@ services:
- --authrpc.vhosts=*
restart: unless-stopped
stop_grace_period: 5m
depends_on:
hashkeychain-testnet-archive-geth-init:
condition: service_completed_successfully
networks:
- chains
volumes:

View File

@@ -29,6 +29,23 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services:
hashkeychain-testnet-geth-init:
image: ${HASHKEYCHAIN_GETH_IMAGE:-us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth}:${HASHKEYCHAIN_TESTNET_GETH_VERSION:-v1.101702.2}
user: root
entrypoint: [/bin/sh, -c]
command:
- |
mkdir -p /config
[ -f /config/genesis.json ] || curl -fsSL -o /config/genesis.json "https://hashkeychain.s3.ap-southeast-1.amazonaws.com/testnet/genesis.json"
geth --db.engine= --gcmode=full --datadir /data init --state.scheme= /config/genesis.json
restart: no
networks:
- chains
volumes:
- ${HASHKEYCHAIN_TESTNET_OP_GETH_PRUNED_PEBBLE_HASH_DATA:-hashkeychain-testnet-op-geth-pruned-pebble-hash}:/data
- ./op/hashkeychain/testnet:/config
logging: *logging-defaults
hashkeychain-testnet:
image: ${HASHKEYCHAIN_GETH_IMAGE:-us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth}:${HASHKEYCHAIN_TESTNET_GETH_VERSION:-v1.101702.2}
sysctls:
@@ -56,7 +73,7 @@ services:
- GETH_BOOTNODES=enode://0492e74fb10579a3c53a327ee42dc70db35e7e0aebd73793a806afccb86b30acecb8fe9d024e06bb3fd154c678926d884df3ae696c71adcbf1339a5762e19c4d@testnet-bootnodes.hsk.xyz:30303,enode://dba82c6b384844a00a54ecdfcb34c209ea714072558db80512d4c65e760846d054cf3f58a826cba33b6b410498559b7e41b147dfa487f8cba3d25d2b5bb9e7bc@testnet-bootnodes.hsk.xyz:30304
- GETH_ROLLUP_DISABLETXPOOLGOSSIP=true
- GETH_ROLLUP_SEQUENCERHTTP=https://testnet.hsk.xyz
entrypoint: /bin/sh -c 'mkdir -p /config && [ ! -f /config/genesis.json ] && wget -qO /config/genesis.json "https://hashkeychain.s3.ap-southeast-1.amazonaws.com/testnet/genesis.json"; [ -f /config/genesis.json ] && geth --gcmode=full --db.engine=pebble --datadir /data init --state.scheme=hash /config/genesis.json; exec geth "$@"' --
entrypoint: /bin/sh -c 'exec geth "$@"' --
command:
- --bootnodes=enode://0492e74fb10579a3c53a327ee42dc70db35e7e0aebd73793a806afccb86b30acecb8fe9d024e06bb3fd154c678926d884df3ae696c71adcbf1339a5762e19c4d@testnet-bootnodes.hsk.xyz:30303,enode://dba82c6b384844a00a54ecdfcb34c209ea714072558db80512d4c65e760846d054cf3f58a826cba33b6b410498559b7e41b147dfa487f8cba3d25d2b5bb9e7bc@testnet-bootnodes.hsk.xyz:30304
- --datadir=/data
@@ -88,6 +105,9 @@ services:
- --authrpc.vhosts=*
restart: unless-stopped
stop_grace_period: 5m
depends_on:
hashkeychain-testnet-geth-init:
condition: service_completed_successfully
networks:
- chains
volumes:

View File

@@ -29,6 +29,23 @@ x-logging-defaults: &logging-defaults
# --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
services:
hashkeychain-testnet-geth-init:
image: ${HASHKEYCHAIN_GETH_IMAGE:-us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth}:${HASHKEYCHAIN_TESTNET_GETH_VERSION:-v1.101702.2}
user: root
entrypoint: [/bin/sh, -c]
command:
- |
mkdir -p /config
[ -f /config/genesis.json ] || curl -fsSL -o /config/genesis.json "https://hashkeychain.s3.ap-southeast-1.amazonaws.com/testnet/genesis.json"
geth --db.engine= --gcmode=full --datadir /data init --state.scheme= /config/genesis.json
restart: no
networks:
- chains
volumes:
- ${HASHKEYCHAIN_TESTNET_OP_GETH_PRUNED_PEBBLE_PATH_DATA:-hashkeychain-testnet-op-geth-pruned-pebble-path}:/data
- ./op/hashkeychain/testnet:/config
logging: *logging-defaults
hashkeychain-testnet:
image: ${HASHKEYCHAIN_GETH_IMAGE:-us-docker.pkg.dev/oplabs-tools-artifacts/images/op-geth}:${HASHKEYCHAIN_TESTNET_GETH_VERSION:-v1.101702.2}
sysctls:
@@ -56,7 +73,7 @@ services:
- GETH_BOOTNODES=enode://0492e74fb10579a3c53a327ee42dc70db35e7e0aebd73793a806afccb86b30acecb8fe9d024e06bb3fd154c678926d884df3ae696c71adcbf1339a5762e19c4d@testnet-bootnodes.hsk.xyz:30303,enode://dba82c6b384844a00a54ecdfcb34c209ea714072558db80512d4c65e760846d054cf3f58a826cba33b6b410498559b7e41b147dfa487f8cba3d25d2b5bb9e7bc@testnet-bootnodes.hsk.xyz:30304
- GETH_ROLLUP_DISABLETXPOOLGOSSIP=true
- GETH_ROLLUP_SEQUENCERHTTP=https://testnet.hsk.xyz
entrypoint: /bin/sh -c 'mkdir -p /config && [ ! -f /config/genesis.json ] && wget -qO /config/genesis.json "https://hashkeychain.s3.ap-southeast-1.amazonaws.com/testnet/genesis.json"; [ -f /config/genesis.json ] && geth --gcmode=full --db.engine=pebble --datadir /data init --state.scheme=path /config/genesis.json; exec geth "$@"' --
entrypoint: /bin/sh -c 'exec geth "$@"' --
command:
- --bootnodes=enode://0492e74fb10579a3c53a327ee42dc70db35e7e0aebd73793a806afccb86b30acecb8fe9d024e06bb3fd154c678926d884df3ae696c71adcbf1339a5762e19c4d@testnet-bootnodes.hsk.xyz:30303,enode://dba82c6b384844a00a54ecdfcb34c209ea714072558db80512d4c65e760846d054cf3f58a826cba33b6b410498559b7e41b147dfa487f8cba3d25d2b5bb9e7bc@testnet-bootnodes.hsk.xyz:30304
- --datadir=/data
@@ -88,6 +105,9 @@ services:
- --authrpc.vhosts=*
restart: unless-stopped
stop_grace_period: 5m
depends_on:
hashkeychain-testnet-geth-init:
condition: service_completed_successfully
networks:
- chains
volumes: