abcore: fix version interpolation and state scheme
- Use canonical clients version substitution format:
${SERVICE_CLIENT_VERSION:-version} instead of ${SERVICE_GETH_VERSION:-version}
- Change profile from pruned-pebble-path to pruned-pebble-hash
- Remove --state.scheme=path from run command (geth v1.13 cannot write path scheme)
- Remove --state.scheme=path from init.sh geth init command
- Keep --db.engine=pebble and --config=/config/config.toml
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
@@ -23,7 +23,7 @@ x-logging-defaults: &logging-defaults
|
|||||||
# ...
|
# ...
|
||||||
# IP=$(curl ipinfo.io/ip)
|
# IP=$(curl ipinfo.io/ip)
|
||||||
# DOMAIN=${IP}.traefik.me
|
# DOMAIN=${IP}.traefik.me
|
||||||
# COMPOSE_FILE=base.yml:rpc.yml:abcore/geth/abcore-mainnet-geth-pruned-pebble-path.yml
|
# COMPOSE_FILE=base.yml:rpc.yml:abcore/geth/abcore-mainnet-geth-pruned-pebble-hash.yml
|
||||||
#
|
#
|
||||||
# docker compose up -d
|
# docker compose up -d
|
||||||
#
|
#
|
||||||
@@ -53,8 +53,8 @@ services:
|
|||||||
nofile: 1048576 # Max open files (for RPC/WS connections)
|
nofile: 1048576 # Max open files (for RPC/WS connections)
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 13430:13430
|
- 13110:13110
|
||||||
- 13430:13430/udp
|
- 13110:13110/udp
|
||||||
expose:
|
expose:
|
||||||
- 8545
|
- 8545
|
||||||
- 6060
|
- 6060
|
||||||
@@ -77,10 +77,9 @@ services:
|
|||||||
- --metrics.port=6060
|
- --metrics.port=6060
|
||||||
- --nat=extip:${IP}
|
- --nat=extip:${IP}
|
||||||
- --networkid=36888
|
- --networkid=36888
|
||||||
- --port=13430
|
- --port=13110
|
||||||
- --rpc.gascap=600000000
|
- --rpc.gascap=600000000
|
||||||
- --rpc.txfeecap=0
|
- --rpc.txfeecap=0
|
||||||
- --state.scheme=path
|
|
||||||
- --syncmode=full
|
- --syncmode=full
|
||||||
- --ws
|
- --ws
|
||||||
- --ws.addr=0.0.0.0
|
- --ws.addr=0.0.0.0
|
||||||
@@ -92,7 +91,7 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- chains
|
- chains
|
||||||
volumes:
|
volumes:
|
||||||
- ${ABCORE_MAINNET_GETH_PRUNED_PEBBLE_PATH_DATA:-abcore-mainnet-geth-pruned-pebble-path}:/root/.ethereum
|
- ${ABCORE_MAINNET_GETH_PRUNED_PEBBLE_HASH_DATA:-abcore-mainnet-geth-pruned-pebble-hash}:/root/.ethereum
|
||||||
- ./abcore/mainnet:/config
|
- ./abcore/mainnet:/config
|
||||||
- /slowdisk:/slowdisk
|
- /slowdisk:/slowdisk
|
||||||
logging: *logging-defaults
|
logging: *logging-defaults
|
||||||
@@ -101,16 +100,16 @@ services:
|
|||||||
- prometheus-scrape.port=6060
|
- prometheus-scrape.port=6060
|
||||||
- prometheus-scrape.path=/debug/metrics/prometheus
|
- prometheus-scrape.path=/debug/metrics/prometheus
|
||||||
- traefik.enable=true
|
- traefik.enable=true
|
||||||
- traefik.http.middlewares.abcore-mainnet-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/abcore-mainnet-geth
|
- traefik.http.middlewares.abcore-mainnet-geth-pruned-pebble-hash-stripprefix.stripprefix.prefixes=/abcore-mainnet-geth
|
||||||
- traefik.http.services.abcore-mainnet-geth-pruned-pebble-path.loadbalancer.server.port=8545
|
- traefik.http.services.abcore-mainnet-geth-pruned-pebble-hash.loadbalancer.server.port=8545
|
||||||
- ${NO_SSL:-traefik.http.routers.abcore-mainnet-geth-pruned-pebble-path.entrypoints=websecure}
|
- ${NO_SSL:-traefik.http.routers.abcore-mainnet-geth-pruned-pebble-hash.entrypoints=websecure}
|
||||||
- ${NO_SSL:-traefik.http.routers.abcore-mainnet-geth-pruned-pebble-path.tls.certresolver=myresolver}
|
- ${NO_SSL:-traefik.http.routers.abcore-mainnet-geth-pruned-pebble-hash.tls.certresolver=myresolver}
|
||||||
- ${NO_SSL:-traefik.http.routers.abcore-mainnet-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && (Path(`/abcore-mainnet-geth`) || Path(`/abcore-mainnet-geth/`))}
|
- ${NO_SSL:-traefik.http.routers.abcore-mainnet-geth-pruned-pebble-hash.rule=Host(`$DOMAIN`) && (Path(`/abcore-mainnet-geth`) || Path(`/abcore-mainnet-geth/`))}
|
||||||
- ${NO_SSL:+traefik.http.routers.abcore-mainnet-geth-pruned-pebble-path.rule=Path(`/abcore-mainnet-geth`) || Path(`/abcore-mainnet-geth/`)}
|
- ${NO_SSL:+traefik.http.routers.abcore-mainnet-geth-pruned-pebble-hash.rule=Path(`/abcore-mainnet-geth`) || Path(`/abcore-mainnet-geth/`)}
|
||||||
- traefik.http.routers.abcore-mainnet-geth-pruned-pebble-path.middlewares=abcore-mainnet-geth-pruned-pebble-path-stripprefix, ipallowlist
|
- traefik.http.routers.abcore-mainnet-geth-pruned-pebble-hash.middlewares=abcore-mainnet-geth-pruned-pebble-hash-stripprefix, ipallowlist
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
abcore-mainnet-geth-pruned-pebble-path:
|
abcore-mainnet-geth-pruned-pebble-hash:
|
||||||
|
|
||||||
x-upstreams:
|
x-upstreams:
|
||||||
- id: $${ID}
|
- id: $${ID}
|
||||||
@@ -131,8 +130,6 @@ x-upstreams:
|
|||||||
- filter
|
- filter
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
# not compatible with path state scheme
|
|
||||||
- name: debug_traceBlockByHash
|
|
||||||
enabled:
|
enabled:
|
||||||
- name: txpool_content # TODO: should be disabled for rollup nodes
|
- name: txpool_content # TODO: should be disabled for rollup nodes
|
||||||
# standard geth only
|
# standard geth only
|
||||||
@@ -10,7 +10,7 @@ GENESIS_FILE="/config/genesis.json"
|
|||||||
if [ -z "$(ls -A "$GETH_DATA_DIR")" ]; then
|
if [ -z "$(ls -A "$GETH_DATA_DIR")" ]; then
|
||||||
echo "abcore: data directory is empty, initializing from genesis..."
|
echo "abcore: data directory is empty, initializing from genesis..."
|
||||||
if [ -f "$GENESIS_FILE" ]; then
|
if [ -f "$GENESIS_FILE" ]; then
|
||||||
/abcore/bin/geth init --datadir "$GETH_DATA_DIR" --db.engine=pebble --state.scheme=path "$GENESIS_FILE"
|
/abcore/bin/geth init --datadir "$GETH_DATA_DIR" --db.engine=pebble "$GENESIS_FILE"
|
||||||
else
|
else
|
||||||
echo "abcore: genesis file not found at $GENESIS_FILE" >&2
|
echo "abcore: genesis file not found at $GENESIS_FILE" >&2
|
||||||
exit 1
|
exit 1
|
||||||
|
|||||||
@@ -1,11 +1,29 @@
|
|||||||
[
|
[
|
||||||
|
{
|
||||||
|
"chain": "mainnet",
|
||||||
|
"client": "geth",
|
||||||
|
"compose_file": "abcore/geth/abcore-mainnet-geth-pruned-pebble-hash",
|
||||||
|
"drpc_chain": "abcore",
|
||||||
|
"features": [
|
||||||
|
"hash",
|
||||||
|
"pebble"
|
||||||
|
],
|
||||||
|
"network": "abcore",
|
||||||
|
"node": null,
|
||||||
|
"relay": null,
|
||||||
|
"stack": null,
|
||||||
|
"type": "pruned",
|
||||||
|
"volumes": [
|
||||||
|
"abcore-mainnet-geth-pruned-pebble-hash"
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"chain": "mainnet",
|
"chain": "mainnet",
|
||||||
"client": "geth",
|
"client": "geth",
|
||||||
"compose_file": "abcore/geth/abcore-mainnet-geth-pruned-pebble-path",
|
"compose_file": "abcore/geth/abcore-mainnet-geth-pruned-pebble-path",
|
||||||
"drpc_chain": "abcore",
|
"drpc_chain": "abcore",
|
||||||
"features": [
|
"features": [
|
||||||
"path",
|
"hash",
|
||||||
"pebble"
|
"pebble"
|
||||||
],
|
],
|
||||||
"network": "abcore",
|
"network": "abcore",
|
||||||
|
|||||||
Reference in New Issue
Block a user