Compare commits
13
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3a4bbcb166 | ||
|
|
174f95ef7e | ||
|
|
ad89fbc778 | ||
|
|
43c800e430 | ||
|
|
c4b30a617f | ||
|
|
123f4cd696 | ||
|
|
8b565d8112 | ||
|
|
98de9095d6 | ||
|
|
f253c4dfc1 | ||
|
|
fd73721e33 | ||
|
|
672f626bc1 | ||
|
|
a3abe11192 | ||
|
|
7db1a2b004 |
@@ -30,7 +30,7 @@ x-logging-defaults: &logging-defaults
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
bitcoin-cash-mainnet:
|
bitcoin-cash-mainnet:
|
||||||
image: ${BITCOIN_CASH_BITCOIND_IMAGE:-bitcoinabc/bitcoin-abc}:${BITCOIN_CASH_MAINNET_BITCOIND_VERSION:-0.33.11}
|
image: ${BITCOIN_CASH_BITCOIND_IMAGE:-bitcoinabc/bitcoin-abc}:${BITCOIN_CASH_MAINNET_BITCOIND_VERSION:-0.33.13}
|
||||||
sysctls:
|
sysctls:
|
||||||
# TCP Performance
|
# TCP Performance
|
||||||
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
|
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
services:
|
services:
|
||||||
|
|
||||||
ethereum-beacon-blobs:
|
ethereum-beacon-blobs:
|
||||||
image: sigp/lighthouse:${LIGHTHOUSE_VERSION:-v6.0.1}
|
image: sigp/lighthouse:${LIGHTHOUSE_VERSION:-v8.2.2}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
- chains
|
- chains
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ x-logging-defaults: &logging-defaults
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
ethereum-mainnet-besu:
|
ethereum-mainnet-besu:
|
||||||
image: ${ETHEREUM_BESU_IMAGE:-hyperledger/besu}:${ETHEREUM_MAINNET_BESU_VERSION:-26.8.1}
|
image: ${ETHEREUM_BESU_IMAGE:-hyperledger/besu}:${ETHEREUM_MAINNET_BESU_VERSION:-26.9.0}
|
||||||
sysctls:
|
sysctls:
|
||||||
# TCP Performance
|
# TCP Performance
|
||||||
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
|
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
|
||||||
@@ -115,7 +115,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-mainnet-besu-pruned-bonsai-ws.middlewares=ethereum-mainnet-besu-pruned-bonsai-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-mainnet-besu-pruned-bonsai-ws.middlewares=ethereum-mainnet-besu-pruned-bonsai-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-mainnet-besu-node:
|
ethereum-mainnet-besu-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 18205:18205
|
- 18205:18205
|
||||||
@@ -195,6 +195,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-hoodi-geth-pruned-pebble-path.middlewares=ethereum-hoodi-geth-pruned-pebble-path-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-hoodi-geth-pruned-pebble-path.middlewares=ethereum-hoodi-geth-pruned-pebble-path-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-hoodi-geth-node:
|
ethereum-hoodi-geth-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_HOODI_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_HOODI_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 16917:16917
|
- 16917:16917
|
||||||
@@ -201,6 +201,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-hoodi-geth-pruned-pebble-path.middlewares=ethereum-hoodi-geth-pruned-pebble-path-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-hoodi-geth-pruned-pebble-path.middlewares=ethereum-hoodi-geth-pruned-pebble-path-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-hoodi-geth-node:
|
ethereum-hoodi-geth-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_HOODI_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_HOODI_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 16917:16917
|
- 16917:16917
|
||||||
- 16917:16917/udp
|
- 16917:16917/udp
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-mainnet-geth-minimal-pebble-path.middlewares=ethereum-mainnet-geth-minimal-pebble-path-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-mainnet-geth-minimal-pebble-path.middlewares=ethereum-mainnet-geth-minimal-pebble-path-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-mainnet-geth-minimal-node:
|
ethereum-mainnet-geth-minimal-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_MAINNET_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_MAINNET_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 19551:19551
|
- 19551:19551
|
||||||
- 19551:19551/udp
|
- 19551:19551/udp
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-mainnet-geth-pruned-leveldb-hash-events.middlewares=ipallowlist
|
- traefik.http.routers.ethereum-mainnet-geth-pruned-leveldb-hash-events.middlewares=ipallowlist
|
||||||
|
|
||||||
ethereum-mainnet-geth-node:
|
ethereum-mainnet-geth-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 15455:15455
|
- 15455:15455
|
||||||
@@ -265,6 +265,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path-events.middlewares=ipallowlist
|
- traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path-events.middlewares=ipallowlist
|
||||||
|
|
||||||
ethereum-mainnet-geth-node:
|
ethereum-mainnet-geth-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 17023:17023
|
- 17023:17023
|
||||||
@@ -267,6 +267,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path.middlewares=ethereum-mainnet-geth-pruned-pebble-path-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path.middlewares=ethereum-mainnet-geth-pruned-pebble-path-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-mainnet-geth-node:
|
ethereum-mainnet-geth-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 17023:17023
|
- 17023:17023
|
||||||
@@ -201,6 +201,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path.middlewares=ethereum-mainnet-geth-pruned-pebble-path-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-mainnet-geth-pruned-pebble-path.middlewares=ethereum-mainnet-geth-pruned-pebble-path-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-mainnet-geth-node:
|
ethereum-mainnet-geth-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_MAINNET_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_MAINNET_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 17023:17023
|
- 17023:17023
|
||||||
- 17023:17023/udp
|
- 17023:17023/udp
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-sepolia-geth-pruned-pebble-path.middlewares=ethereum-sepolia-geth-pruned-pebble-path-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-sepolia-geth-pruned-pebble-path.middlewares=ethereum-sepolia-geth-pruned-pebble-path-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-sepolia-geth-node:
|
ethereum-sepolia-geth-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_SEPOLIA_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_SEPOLIA_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 19710:19710
|
- 19710:19710
|
||||||
@@ -201,6 +201,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-sepolia-geth-pruned-pebble-path.middlewares=ethereum-sepolia-geth-pruned-pebble-path-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-sepolia-geth-pruned-pebble-path.middlewares=ethereum-sepolia-geth-pruned-pebble-path-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-sepolia-geth-node:
|
ethereum-sepolia-geth-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_SEPOLIA_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_SEPOLIA_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 19710:19710
|
- 19710:19710
|
||||||
- 19710:19710/udp
|
- 19710:19710/udp
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-hoodi-nethermind-pruned-rocksdb-trace.middlewares=ethereum-hoodi-nethermind-pruned-rocksdb-trace-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-hoodi-nethermind-pruned-rocksdb-trace.middlewares=ethereum-hoodi-nethermind-pruned-rocksdb-trace-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-hoodi-nethermind-node:
|
ethereum-hoodi-nethermind-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_HOODI_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_HOODI_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 15786:15786
|
- 15786:15786
|
||||||
@@ -175,6 +175,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-mainnet-nethermind-pruned-rocksdb-trace.middlewares=ethereum-mainnet-nethermind-pruned-rocksdb-trace-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-mainnet-nethermind-pruned-rocksdb-trace.middlewares=ethereum-mainnet-nethermind-pruned-rocksdb-trace-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-mainnet-nethermind-node:
|
ethereum-mainnet-nethermind-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 17065:17065
|
- 17065:17065
|
||||||
@@ -175,6 +175,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ services:
|
|||||||
- traefik.http.routers.ethereum-sepolia-nethermind-pruned-rocksdb-trace.middlewares=ethereum-sepolia-nethermind-pruned-rocksdb-trace-stripprefix, ipallowlist
|
- traefik.http.routers.ethereum-sepolia-nethermind-pruned-rocksdb-trace.middlewares=ethereum-sepolia-nethermind-pruned-rocksdb-trace-stripprefix, ipallowlist
|
||||||
|
|
||||||
ethereum-sepolia-nethermind-node:
|
ethereum-sepolia-nethermind-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_SEPOLIA_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_SEPOLIA_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 15835:15835
|
- 15835:15835
|
||||||
@@ -175,6 +175,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-hoodi-reth-node:
|
ethereum-hoodi-reth-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_HOODI_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_HOODI_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 15606:15606
|
- 15606:15606
|
||||||
- 15606:15606/udp
|
- 15606:15606/udp
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-hoodi-reth-pruned-node:
|
ethereum-hoodi-reth-pruned-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_HOODI_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_HOODI_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 17435:17435
|
- 17435:17435
|
||||||
- 17435:17435/udp
|
- 17435:17435/udp
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-mainnet-reth-node:
|
ethereum-mainnet-reth-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 19563:19563
|
- 19563:19563
|
||||||
@@ -190,6 +190,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-mainnet-reth-node:
|
ethereum-mainnet-reth-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_MAINNET_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_MAINNET_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 19563:19563
|
- 19563:19563
|
||||||
- 19563:19563/udp
|
- 19563:19563/udp
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ services:
|
|||||||
- pruning
|
- pruning
|
||||||
|
|
||||||
ethereum-mainnet-reth-minimal-node:
|
ethereum-mainnet-reth-minimal-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 19286:19286
|
- 19286:19286
|
||||||
@@ -249,6 +249,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-mainnet-reth-pruned-node:
|
ethereum-mainnet-reth-pruned-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_MAINNET_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 15150:15150
|
- 15150:15150
|
||||||
@@ -191,6 +191,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-mainnet-reth-pruned-node:
|
ethereum-mainnet-reth-pruned-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_MAINNET_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_MAINNET_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 15150:15150
|
- 15150:15150
|
||||||
- 15150:15150/udp
|
- 15150:15150/udp
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-sepolia-reth-node:
|
ethereum-sepolia-reth-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_SEPOLIA_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_SEPOLIA_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 19330:19330
|
- 19330:19330
|
||||||
@@ -190,6 +190,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-sepolia-reth-node:
|
ethereum-sepolia-reth-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_SEPOLIA_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_SEPOLIA_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 19330:19330
|
- 19330:19330
|
||||||
- 19330:19330/udp
|
- 19330:19330/udp
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-sepolia-reth-pruned-node:
|
ethereum-sepolia-reth-pruned-node:
|
||||||
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_SEPOLIA_NIMBUS_VERSION:-multiarch-v26.7.0}
|
image: ${ETHEREUM_NIMBUS_IMAGE:-statusim/nimbus-eth2}:${ETHEREUM_SEPOLIA_NIMBUS_VERSION:-multiarch-v26.8.0}
|
||||||
user: root
|
user: root
|
||||||
ports:
|
ports:
|
||||||
- 17150:17150
|
- 17150:17150
|
||||||
@@ -191,6 +191,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
ethereum-sepolia-reth-pruned-node:
|
ethereum-sepolia-reth-pruned-node:
|
||||||
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_SEPOLIA_PRYSM_VERSION:-v7.1.7}
|
image: ${ETHEREUM_PRYSM_IMAGE:-prysmaticlabs/prysm-beacon-chain}:${ETHEREUM_SEPOLIA_PRYSM_VERSION:-v7.1.8}
|
||||||
ports:
|
ports:
|
||||||
- 17150:17150
|
- 17150:17150
|
||||||
- 17150:17150/udp
|
- 17150:17150/udp
|
||||||
|
|||||||
@@ -65,6 +65,7 @@ services:
|
|||||||
- --beacon.api.cors.allow-origins=*
|
- --beacon.api.cors.allow-origins=*
|
||||||
- --beacon.api.port=5555
|
- --beacon.api.port=5555
|
||||||
- --beacon.api=beacon,builder,debug,lighthouse,node,validator,config
|
- --beacon.api=beacon,builder,debug,lighthouse,node,validator,config
|
||||||
|
- --caplin.checkpoint-sync-url=https://checkpoint.chiadochain.net
|
||||||
- --caplin.discovery.addr=0.0.0.0
|
- --caplin.discovery.addr=0.0.0.0
|
||||||
- --caplin.discovery.port=16986
|
- --caplin.discovery.port=16986
|
||||||
- --caplin.discovery.tcpport=16986
|
- --caplin.discovery.tcpport=16986
|
||||||
@@ -88,7 +89,7 @@ services:
|
|||||||
- --rpc.overlay.getlogstimeout=${GNOSIS_CHIADO_ERIGON3_ARCHIVE_TRACE_GETLOGSTIMEOUT:-5m0s}
|
- --rpc.overlay.getlogstimeout=${GNOSIS_CHIADO_ERIGON3_ARCHIVE_TRACE_GETLOGSTIMEOUT:-5m0s}
|
||||||
- --rpc.overlay.replayblocktimeout=${GNOSIS_CHIADO_ERIGON3_ARCHIVE_TRACE_REPLAYBLOCKTIMEOUT:-10s}
|
- --rpc.overlay.replayblocktimeout=${GNOSIS_CHIADO_ERIGON3_ARCHIVE_TRACE_REPLAYBLOCKTIMEOUT:-10s}
|
||||||
- --rpc.returndata.limit=10000000
|
- --rpc.returndata.limit=10000000
|
||||||
- --sentinel.staticpeers=/ip4/51.210.221.124/tcp/9500/p2p/16Uiu2HAmSnLLjZfkFCythED8tQS5kP4NJKBuMdd1FYE23ZymKwL6,/ip4/65.109.101.48/tcp/9000/p2p/16Uiu2HAm98ceLNE6X3mjVcsu6ZAaKZPPcqKmeofidTDy7UCHyTtY,/ip4/57.131.40.177/tcp/9000/p2p/16Uiu2HAmUwW7LmoMDprx125LQQkt2Q1PCByiZgvVump4E284AtNc,/ip4/65.21.231.153/tcp/9009/p2p/16Uiu2HAmDZLoHHgHXMy8ddkDWNqkRDX3mSuvEiqzpYAmXKxQ7TWj,/ip4/137.74.112.3/tcp/9000/p2p/16Uiu2HAmAyBYYfR8sDE6X1gXtL9oCGZBLfRsVnGJZnDTEMmJfL8N
|
- --sentinel.staticpeers=/ip4/134.65.192.121/tcp/19000/p2p/16Uiu2HAm1TwYCeKTdwYayAr8Vru7Ku9HKHH7MiWS6G5QuVsVqUy2
|
||||||
- --torrent.download.rate=${GNOSIS_CHIADO_ERIGON3_ARCHIVE_TRACE_MAX_DOWNLOAD_RATE:-1000mb}
|
- --torrent.download.rate=${GNOSIS_CHIADO_ERIGON3_ARCHIVE_TRACE_MAX_DOWNLOAD_RATE:-1000mb}
|
||||||
- --torrent.port=26986
|
- --torrent.port=26986
|
||||||
- --ws
|
- --ws
|
||||||
|
|||||||
@@ -65,6 +65,7 @@ services:
|
|||||||
- --beacon.api.cors.allow-origins=*
|
- --beacon.api.cors.allow-origins=*
|
||||||
- --beacon.api.port=5555
|
- --beacon.api.port=5555
|
||||||
- --beacon.api=beacon,builder,debug,lighthouse,node,validator,config
|
- --beacon.api=beacon,builder,debug,lighthouse,node,validator,config
|
||||||
|
- --caplin.checkpoint-sync-url=https://checkpoint.chiadochain.net
|
||||||
- --caplin.discovery.addr=0.0.0.0
|
- --caplin.discovery.addr=0.0.0.0
|
||||||
- --caplin.discovery.port=16010
|
- --caplin.discovery.port=16010
|
||||||
- --caplin.discovery.tcpport=16010
|
- --caplin.discovery.tcpport=16010
|
||||||
@@ -89,7 +90,7 @@ services:
|
|||||||
- --rpc.overlay.getlogstimeout=${GNOSIS_CHIADO_ERIGON3_MINIMAL_TRACE_GETLOGSTIMEOUT:-5m0s}
|
- --rpc.overlay.getlogstimeout=${GNOSIS_CHIADO_ERIGON3_MINIMAL_TRACE_GETLOGSTIMEOUT:-5m0s}
|
||||||
- --rpc.overlay.replayblocktimeout=${GNOSIS_CHIADO_ERIGON3_MINIMAL_TRACE_REPLAYBLOCKTIMEOUT:-10s}
|
- --rpc.overlay.replayblocktimeout=${GNOSIS_CHIADO_ERIGON3_MINIMAL_TRACE_REPLAYBLOCKTIMEOUT:-10s}
|
||||||
- --rpc.returndata.limit=10000000
|
- --rpc.returndata.limit=10000000
|
||||||
- --sentinel.staticpeers=/ip4/51.210.221.124/tcp/9500/p2p/16Uiu2HAmSnLLjZfkFCythED8tQS5kP4NJKBuMdd1FYE23ZymKwL6,/ip4/65.109.101.48/tcp/9000/p2p/16Uiu2HAm98ceLNE6X3mjVcsu6ZAaKZPPcqKmeofidTDy7UCHyTtY,/ip4/57.131.40.177/tcp/9000/p2p/16Uiu2HAmUwW7LmoMDprx125LQQkt2Q1PCByiZgvVump4E284AtNc,/ip4/65.21.231.153/tcp/9009/p2p/16Uiu2HAmDZLoHHgHXMy8ddkDWNqkRDX3mSuvEiqzpYAmXKxQ7TWj,/ip4/137.74.112.3/tcp/9000/p2p/16Uiu2HAmAyBYYfR8sDE6X1gXtL9oCGZBLfRsVnGJZnDTEMmJfL8N
|
- --sentinel.staticpeers=/ip4/134.65.192.121/tcp/19000/p2p/16Uiu2HAm1TwYCeKTdwYayAr8Vru7Ku9HKHH7MiWS6G5QuVsVqUy2
|
||||||
- --torrent.download.rate=${GNOSIS_CHIADO_ERIGON3_MINIMAL_TRACE_MAX_DOWNLOAD_RATE:-1000mb}
|
- --torrent.download.rate=${GNOSIS_CHIADO_ERIGON3_MINIMAL_TRACE_MAX_DOWNLOAD_RATE:-1000mb}
|
||||||
- --torrent.port=26010
|
- --torrent.port=26010
|
||||||
- --ws
|
- --ws
|
||||||
|
|||||||
@@ -65,6 +65,7 @@ services:
|
|||||||
- --beacon.api.cors.allow-origins=*
|
- --beacon.api.cors.allow-origins=*
|
||||||
- --beacon.api.port=5555
|
- --beacon.api.port=5555
|
||||||
- --beacon.api=beacon,builder,debug,lighthouse,node,validator,config
|
- --beacon.api=beacon,builder,debug,lighthouse,node,validator,config
|
||||||
|
- --caplin.checkpoint-sync-url=https://checkpoint.chiadochain.net
|
||||||
- --caplin.discovery.addr=0.0.0.0
|
- --caplin.discovery.addr=0.0.0.0
|
||||||
- --caplin.discovery.port=16886
|
- --caplin.discovery.port=16886
|
||||||
- --caplin.discovery.tcpport=16886
|
- --caplin.discovery.tcpport=16886
|
||||||
@@ -89,7 +90,7 @@ services:
|
|||||||
- --rpc.overlay.getlogstimeout=${GNOSIS_CHIADO_ERIGON3_PRUNED_TRACE_GETLOGSTIMEOUT:-5m0s}
|
- --rpc.overlay.getlogstimeout=${GNOSIS_CHIADO_ERIGON3_PRUNED_TRACE_GETLOGSTIMEOUT:-5m0s}
|
||||||
- --rpc.overlay.replayblocktimeout=${GNOSIS_CHIADO_ERIGON3_PRUNED_TRACE_REPLAYBLOCKTIMEOUT:-10s}
|
- --rpc.overlay.replayblocktimeout=${GNOSIS_CHIADO_ERIGON3_PRUNED_TRACE_REPLAYBLOCKTIMEOUT:-10s}
|
||||||
- --rpc.returndata.limit=10000000
|
- --rpc.returndata.limit=10000000
|
||||||
- --sentinel.staticpeers=/ip4/51.210.221.124/tcp/9500/p2p/16Uiu2HAmSnLLjZfkFCythED8tQS5kP4NJKBuMdd1FYE23ZymKwL6,/ip4/65.109.101.48/tcp/9000/p2p/16Uiu2HAm98ceLNE6X3mjVcsu6ZAaKZPPcqKmeofidTDy7UCHyTtY,/ip4/57.131.40.177/tcp/9000/p2p/16Uiu2HAmUwW7LmoMDprx125LQQkt2Q1PCByiZgvVump4E284AtNc,/ip4/65.21.231.153/tcp/9009/p2p/16Uiu2HAmDZLoHHgHXMy8ddkDWNqkRDX3mSuvEiqzpYAmXKxQ7TWj,/ip4/137.74.112.3/tcp/9000/p2p/16Uiu2HAmAyBYYfR8sDE6X1gXtL9oCGZBLfRsVnGJZnDTEMmJfL8N
|
- --sentinel.staticpeers=/ip4/134.65.192.121/tcp/19000/p2p/16Uiu2HAm1TwYCeKTdwYayAr8Vru7Ku9HKHH7MiWS6G5QuVsVqUy2
|
||||||
- --torrent.download.rate=${GNOSIS_CHIADO_ERIGON3_PRUNED_TRACE_MAX_DOWNLOAD_RATE:-1000mb}
|
- --torrent.download.rate=${GNOSIS_CHIADO_ERIGON3_PRUNED_TRACE_MAX_DOWNLOAD_RATE:-1000mb}
|
||||||
- --torrent.port=26886
|
- --torrent.port=26886
|
||||||
- --ws
|
- --ws
|
||||||
|
|||||||
@@ -177,6 +177,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -180,6 +180,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -175,6 +175,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -177,6 +177,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -180,6 +180,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -175,6 +175,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -189,6 +189,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -190,6 +190,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -189,6 +189,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -190,6 +190,15 @@ x-upstreams:
|
|||||||
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
# UNAVAILABLE and failing live requests ("Source was empty"). Head tracking
|
||||||
# still governs health with validation off. 2026-07-10, dRPC incident.
|
# still governs health with validation off. 2026-07-10, dRPC incident.
|
||||||
disable-validation: true
|
disable-validation: true
|
||||||
|
# dshackle runs internal lower-bound detectors against each upstream.
|
||||||
|
# For a nimbus beacon endpoint the epoch detector calls POST /eth/v1/beacon/rewards/attestations/{epoch}
|
||||||
|
# every ~5 minutes with a hardcoded 5-second internal timeout, while nimbus needs 16-22 seconds
|
||||||
|
# to replay that historical state. The probe therefore always times out, retries, and
|
||||||
|
# re-issues the same historical request forever, which pins the node in constant
|
||||||
|
# historical state replay and has repeatedly degraded the mainnet ethereum node.
|
||||||
|
# The code path is GenericUpstream.upstreamStart(): if (!getOptions().disableBoundValidation)
|
||||||
|
# { detectLowerBlock() }. The YAML key is read by ChainOptionsReader as disable-bound-validation.
|
||||||
|
disable-bound-validation: true
|
||||||
methods:
|
methods:
|
||||||
disabled:
|
disabled:
|
||||||
- name: GET#/eth/v2/debug/beacon/states/*
|
- name: GET#/eth/v2/debug/beacon/states/*
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ x-logging-defaults: &logging-defaults
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
linea-sepolia:
|
linea-sepolia:
|
||||||
image: ${LINEA_BESU_IMAGE:-consensys/linea-besu-package}:${LINEA_SEPOLIA_BESU_VERSION:-2.2.0-20260821-8bb72b4}
|
image: ${LINEA_BESU_IMAGE:-consensys/linea-besu-package}:${LINEA_SEPOLIA_BESU_VERSION:-2.3.0-20260923-8d01643}
|
||||||
sysctls:
|
sysctls:
|
||||||
# TCP Performance
|
# TCP Performance
|
||||||
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
|
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ services:
|
|||||||
- --datadir=/data
|
- --datadir=/data
|
||||||
- --db.engine=leveldb
|
- --db.engine=leveldb
|
||||||
- --gcmode=full
|
- --gcmode=full
|
||||||
- --hvm.genesisheader=0000003efaaa2ba65de684c512bb67ef115298d1d16bcb49b16c020000000000000000ed31a56788c4488afc4ee69e0791ad6aeeb9ea05f069e0fdde6159068765ad3f4128a96726770217e7f41c86
|
- --hvm.genesisheader=0000003efaaa2ba65de684c512bb67ef115298d1d16bcb49b16c020000000000000000ed31a56788c4488afc4ee69e0791ad6aeeb9ea05f069e0fdde6159068765ad3f4128a96726770217e7f41c865c
|
||||||
- --hvm.genesisheight=883092
|
- --hvm.genesisheight=883092
|
||||||
- --hvm.headerdatadir=/data/tbc/headers
|
- --hvm.headerdatadir=/data/tbc/headers
|
||||||
- --maxpeers=50
|
- --maxpeers=50
|
||||||
|
|||||||
@@ -133,7 +133,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
xlayer-testnet-op-reth-node:
|
xlayer-testnet-op-reth-node:
|
||||||
image: ${XLAYER_NODE_IMAGE:-xlayer/op-node}:${XLAYER_TESTNET_NODE_VERSION:-v0.1.5.1}
|
image: ${XLAYER_NODE_IMAGE:-xlayer/op-node}:${XLAYER_TESTNET_NODE_VERSION:-v0.1.6}
|
||||||
ports:
|
ports:
|
||||||
- 18466:18466
|
- 18466:18466
|
||||||
- 18466:18466/udp
|
- 18466:18466/udp
|
||||||
|
|||||||
@@ -10,55 +10,9 @@ interval = 5
|
|||||||
p2p_port = 34070
|
p2p_port = 34070
|
||||||
timeout = 5
|
timeout = 5
|
||||||
identity_file_path = "/consensus/ec-secp256k1-non-validator.der"
|
identity_file_path = "/consensus/ec-secp256k1-non-validator.der"
|
||||||
trusted_only = true
|
trusted_only = false
|
||||||
discovery.enabled = true
|
discovery.enabled = true
|
||||||
|
|
||||||
[api]
|
|
||||||
enabled = true
|
|
||||||
host = "0.0.0.0"
|
|
||||||
port = 35070
|
|
||||||
|
|
||||||
[validators]
|
|
||||||
[validators.0]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-0.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-0.hex"
|
|
||||||
|
|
||||||
[validators.1]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-1.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-1.hex"
|
|
||||||
|
|
||||||
[validators.2]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-2.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-2.hex"
|
|
||||||
|
|
||||||
[validators.3]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-3.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-3.hex"
|
|
||||||
|
|
||||||
[validators.4]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-4.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-4.hex"
|
|
||||||
|
|
||||||
[validators.5]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-5.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-5.hex"
|
|
||||||
|
|
||||||
[validators.6]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-6.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-6.hex"
|
|
||||||
|
|
||||||
[validators.7]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-7.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-7.hex"
|
|
||||||
|
|
||||||
[validators.8]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-8.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-8.hex"
|
|
||||||
|
|
||||||
[validators.9]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-9.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-9.hex"
|
|
||||||
|
|
||||||
[network.bootstrap_nodes.0]
|
[network.bootstrap_nodes.0]
|
||||||
api_host = "plasma-mainnet-observer-cs-1.plasmalabs.tech"
|
api_host = "plasma-mainnet-observer-cs-1.plasmalabs.tech"
|
||||||
p2p_port = 34070
|
p2p_port = 34070
|
||||||
@@ -74,14 +28,57 @@ api_host = "plasma-mainnet-observer-cs-9.plasmalabs.tech"
|
|||||||
p2p_port = 34070
|
p2p_port = 34070
|
||||||
peer_id = "16Uiu2HAm2PVfZRoyXXLASVzVX3gyBEQd3mRAzZytjv3esD9kWumD"
|
peer_id = "16Uiu2HAm2PVfZRoyXXLASVzVX3gyBEQd3mRAzZytjv3esD9kWumD"
|
||||||
|
|
||||||
[[network.trusted_peers]]
|
[network.bls_peer_ids]
|
||||||
peer_id = "16Uiu2HAm4WdZmik6PVsRvcbCzc1eHuNfQHgj52CxUAjmdC7W5dXi"
|
ad840fde21315f757ae4f7b30629d6446fced8648b46adfe6cfcda615ee7d93b2c8bd160fc189899d388133935686972 = "16Uiu2HAkvjrtriXRzhVp4i6jdNb6wPWA9wh9TKvsh1DnFJe4AF1J"
|
||||||
address = "plasma-mainnet-observer-cs-1.plasmalabs.tech:34070"
|
a65fda74154fc876c70feb22e5d51be5d224f57152c37d6ceadb534f0c1976992cc8470b87ade6071574b778ff420828 = "16Uiu2HAkv5EgrXXwi4gheip871xYJrY5Gc7oVTs3TWuS1BgFN5jE"
|
||||||
|
9732eabb15ac6fe92a0107c4faf5a2ba175ce0a835e36e0d5892bfea220bc43a1894ff0c75067c733bc3a9c2798b6b3b = "16Uiu2HAkuz46swzu5uRzjwf15YsJBe4yawh9qHtPhtHo5mZp9rQU"
|
||||||
|
90bf4d4e3b84f19842d7e01fb09403b074730823fc143f47307018edb03659765d91ce297f945c77e1a198eed0da5b93 = "16Uiu2HAmMjDzXsnKm7xFq2gVAUKhcTtMsETXPWo3HDwnKSVyHCBv"
|
||||||
|
a9dcac28ddbf37c7af585a77c6b49568b1d844027443bac69769d5fb69796d8fb93d798ff37c0b1a91fd263576e207d4 = "16Uiu2HAmVXe3Jpb5AVuKoggNJ1cvYKZT7yC7C7Me3JYNrD36hqvU"
|
||||||
|
9173143cf3df430b15bc52961a516e1923d023aac7e31c8e4b35a5df41133934639557bec12dcc80b21f4cb879dbf49e = "16Uiu2HAm4mHePE4gesAb9KhUsQ9vbGyxZGbKD2H8Qv9LSERfQ4fq"
|
||||||
|
b9935908a1c1b77f8c388767eeb21a8e85b2131204dfea5bed53559b881d22c3bca57237c389be16da6d1ff25aca1385 = "16Uiu2HAmN7iKTmj56PzYBueSo1niYUC7jagvfKPqooz4X9ooTKUs"
|
||||||
|
a74898f0250015bd973d569a5c70c7b3ef46121dd6035ce95d000f2fdc61fafd0145d47933ff26ee65a533adbd2e699d = "16Uiu2HAmLtcwU8CSSATpyukvZ9xgjaihjYDye4pBAnvpUsgU9uXQ"
|
||||||
|
a442d581de5524eddaf4c8c467cc32f04ddab12b88c7e924fbd67c1546abaca6f8f521dcfafa2df62baa7eda3c055b14 = "16Uiu2HAmCM3TprzKxopBXVP8en3aFH2NuMMgVfYyunvqxt9LWuMF"
|
||||||
|
a24775fea0da6e9800492fd896896e79d6cb70058d1f97d2e7405078fcf051b9c49ad60455a11e85dc553cc4a19c2c5e = "16Uiu2HAky6J4k55kyXPiFrtJnqAt6WG4rMC1V2cg7t3E7KmHug7a"
|
||||||
|
|
||||||
[[network.trusted_peers]]
|
[api]
|
||||||
peer_id = "16Uiu2HAmGmnMycTkjnMoxcyVAF8cUFpVoVKKCAGTpwEBJMs181yM"
|
enabled = true
|
||||||
address = "plasma-mainnet-observer-cs-4.plasmalabs.tech:34070"
|
host = "0.0.0.0"
|
||||||
|
port = 35070
|
||||||
|
|
||||||
[[network.trusted_peers]]
|
[chain.aquila]
|
||||||
peer_id = "16Uiu2HAm2PVfZRoyXXLASVzVX3gyBEQd3mRAzZytjv3esD9kWumD"
|
activation_height = 33300000
|
||||||
address = "plasma-mainnet-observer-cs-9.plasmalabs.tech:34070"
|
contract_address = "0x6c50b8ca8EeAa1c75dEe5b5EA79772AcAbc92F48"
|
||||||
|
epoch_length = 20000
|
||||||
|
handoff_window = 10000
|
||||||
|
speculative_prefetch = 9999
|
||||||
|
unsafe_allow_short_handoff_window = false
|
||||||
|
|
||||||
|
[chain.static_committee.0]
|
||||||
|
bls_public_key = "ad840fde21315f757ae4f7b30629d6446fced8648b46adfe6cfcda615ee7d93b2c8bd160fc189899d388133935686972"
|
||||||
|
|
||||||
|
[chain.static_committee.1]
|
||||||
|
bls_public_key = "a65fda74154fc876c70feb22e5d51be5d224f57152c37d6ceadb534f0c1976992cc8470b87ade6071574b778ff420828"
|
||||||
|
|
||||||
|
[chain.static_committee.2]
|
||||||
|
bls_public_key = "9732eabb15ac6fe92a0107c4faf5a2ba175ce0a835e36e0d5892bfea220bc43a1894ff0c75067c733bc3a9c2798b6b3b"
|
||||||
|
|
||||||
|
[chain.static_committee.3]
|
||||||
|
bls_public_key = "90bf4d4e3b84f19842d7e01fb09403b074730823fc143f47307018edb03659765d91ce297f945c77e1a198eed0da5b93"
|
||||||
|
|
||||||
|
[chain.static_committee.4]
|
||||||
|
bls_public_key = "a9dcac28ddbf37c7af585a77c6b49568b1d844027443bac69769d5fb69796d8fb93d798ff37c0b1a91fd263576e207d4"
|
||||||
|
|
||||||
|
[chain.static_committee.5]
|
||||||
|
bls_public_key = "9173143cf3df430b15bc52961a516e1923d023aac7e31c8e4b35a5df41133934639557bec12dcc80b21f4cb879dbf49e"
|
||||||
|
|
||||||
|
[chain.static_committee.6]
|
||||||
|
bls_public_key = "b9935908a1c1b77f8c388767eeb21a8e85b2131204dfea5bed53559b881d22c3bca57237c389be16da6d1ff25aca1385"
|
||||||
|
|
||||||
|
[chain.static_committee.7]
|
||||||
|
bls_public_key = "a74898f0250015bd973d569a5c70c7b3ef46121dd6035ce95d000f2fdc61fafd0145d47933ff26ee65a533adbd2e699d"
|
||||||
|
|
||||||
|
[chain.static_committee.8]
|
||||||
|
bls_public_key = "a442d581de5524eddaf4c8c467cc32f04ddab12b88c7e924fbd67c1546abaca6f8f521dcfafa2df62baa7eda3c055b14"
|
||||||
|
|
||||||
|
[chain.static_committee.9]
|
||||||
|
bls_public_key = "a24775fea0da6e9800492fd896896e79d6cb70058d1f97d2e7405078fcf051b9c49ad60455a11e85dc553cc4a19c2c5e"
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ services:
|
|||||||
logging: *logging-defaults
|
logging: *logging-defaults
|
||||||
|
|
||||||
plasma-mainnet-initialize-consensus:
|
plasma-mainnet-initialize-consensus:
|
||||||
image: ${PLASMA_PLASMA_CONSENSUS_IMAGE:-ghcr.io/plasmalaboratories/plasma-consensus-public}:${PLASMA_MAINNET_PLASMA_CONSENSUS_VERSION:-0.15.0}
|
image: ${PLASMA_PLASMA_CONSENSUS_IMAGE:-ghcr.io/plasmalaboratories/plasma-consensus-public}:${PLASMA_MAINNET_PLASMA_CONSENSUS_VERSION:-1.1.0}
|
||||||
user: 0:0
|
user: 0:0
|
||||||
entrypoint: [/bin/bash, -c]
|
entrypoint: [/bin/bash, -c]
|
||||||
command:
|
command:
|
||||||
@@ -58,8 +58,8 @@ services:
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
if [ ! -f /consensus/data.mdb ]; then
|
if [ ! -f /consensus/data.mdb ]; then
|
||||||
echo "INFO Generating consensus database for mainnet network"
|
echo "INFO Generating consensus database for mainnet network"
|
||||||
plasma-cli init \
|
plasma-cli init observer \
|
||||||
--chain /node/genesis.json \
|
--config-path /config/non-validator.toml \
|
||||||
--data-dir /consensus
|
--data-dir /consensus
|
||||||
else
|
else
|
||||||
echo "INFO Consensus database already exists at /consensus/data.mdb"
|
echo "INFO Consensus database already exists at /consensus/data.mdb"
|
||||||
@@ -80,6 +80,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ${PLASMA_MAINNET_RETH_PRUNED_TRACE_CONSENSUS_DATA:-plasma-mainnet-reth-pruned-trace-consensus}:/consensus:rw
|
- ${PLASMA_MAINNET_RETH_PRUNED_TRACE_CONSENSUS_DATA:-plasma-mainnet-reth-pruned-trace-consensus}:/consensus:rw
|
||||||
- ./plasma/mainnet/genesis.json:/node/genesis.json:ro
|
- ./plasma/mainnet/genesis.json:/node/genesis.json:ro
|
||||||
|
- ./plasma/mainnet/non-validator.toml:/config/non-validator.toml:ro
|
||||||
- .jwtsecret:/jwt/jwt.hex:ro
|
- .jwtsecret:/jwt/jwt.hex:ro
|
||||||
logging: *logging-defaults
|
logging: *logging-defaults
|
||||||
|
|
||||||
@@ -190,7 +191,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
plasma-mainnet-node:
|
plasma-mainnet-node:
|
||||||
image: ${PLASMA_PLASMA_CONSENSUS_IMAGE:-ghcr.io/plasmalaboratories/plasma-consensus-public}:${PLASMA_MAINNET_PLASMA_CONSENSUS_VERSION:-0.15.0}
|
image: ${PLASMA_PLASMA_CONSENSUS_IMAGE:-ghcr.io/plasmalaboratories/plasma-consensus-public}:${PLASMA_MAINNET_PLASMA_CONSENSUS_VERSION:-1.1.0}
|
||||||
user: 0:0
|
user: 0:0
|
||||||
ports:
|
ports:
|
||||||
- 18415:34070
|
- 18415:34070
|
||||||
@@ -212,8 +213,7 @@ services:
|
|||||||
exec plasma-cli observer \
|
exec plasma-cli observer \
|
||||||
--config-path /tmp/non-validator.toml \
|
--config-path /tmp/non-validator.toml \
|
||||||
--no-color \
|
--no-color \
|
||||||
--timeout-stream-manager 5s \
|
--timeout-stream-manager 10ms \
|
||||||
--nat=extip:${IP}:18415 \
|
|
||||||
--telemetry.enable-metrics \
|
--telemetry.enable-metrics \
|
||||||
--telemetry.enable-health \
|
--telemetry.enable-health \
|
||||||
--telemetry.host 0.0.0.0 \
|
--telemetry.host 0.0.0.0 \
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ services:
|
|||||||
logging: *logging-defaults
|
logging: *logging-defaults
|
||||||
|
|
||||||
plasma-testnet-initialize-consensus:
|
plasma-testnet-initialize-consensus:
|
||||||
image: ${PLASMA_PLASMA_CONSENSUS_IMAGE:-ghcr.io/plasmalaboratories/plasma-consensus-public}:${PLASMA_TESTNET_PLASMA_CONSENSUS_VERSION:-0.15.0}
|
image: ${PLASMA_PLASMA_CONSENSUS_IMAGE:-ghcr.io/plasmalaboratories/plasma-consensus-public}:${PLASMA_TESTNET_PLASMA_CONSENSUS_VERSION:-1.1.0}
|
||||||
user: 0:0
|
user: 0:0
|
||||||
entrypoint: [/bin/bash, -c]
|
entrypoint: [/bin/bash, -c]
|
||||||
command:
|
command:
|
||||||
@@ -58,8 +58,8 @@ services:
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
if [ ! -f /consensus/data.mdb ]; then
|
if [ ! -f /consensus/data.mdb ]; then
|
||||||
echo "INFO Generating consensus database for testnet network"
|
echo "INFO Generating consensus database for testnet network"
|
||||||
plasma-cli init \
|
plasma-cli init observer \
|
||||||
--chain /node/genesis.json \
|
--config-path /config/non-validator.toml \
|
||||||
--data-dir /consensus
|
--data-dir /consensus
|
||||||
else
|
else
|
||||||
echo "INFO Consensus database already exists at /consensus/data.mdb"
|
echo "INFO Consensus database already exists at /consensus/data.mdb"
|
||||||
@@ -80,6 +80,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ${PLASMA_TESTNET_RETH_PRUNED_TRACE_CONSENSUS_DATA:-plasma-testnet-reth-pruned-trace-consensus}:/consensus:rw
|
- ${PLASMA_TESTNET_RETH_PRUNED_TRACE_CONSENSUS_DATA:-plasma-testnet-reth-pruned-trace-consensus}:/consensus:rw
|
||||||
- ./plasma/testnet/genesis.json:/node/genesis.json:ro
|
- ./plasma/testnet/genesis.json:/node/genesis.json:ro
|
||||||
|
- ./plasma/testnet/non-validator.toml:/config/non-validator.toml:ro
|
||||||
- .jwtsecret:/jwt/jwt.hex:ro
|
- .jwtsecret:/jwt/jwt.hex:ro
|
||||||
logging: *logging-defaults
|
logging: *logging-defaults
|
||||||
|
|
||||||
@@ -190,7 +191,7 @@ services:
|
|||||||
shm_size: 2gb
|
shm_size: 2gb
|
||||||
|
|
||||||
plasma-testnet-node:
|
plasma-testnet-node:
|
||||||
image: ${PLASMA_PLASMA_CONSENSUS_IMAGE:-ghcr.io/plasmalaboratories/plasma-consensus-public}:${PLASMA_TESTNET_PLASMA_CONSENSUS_VERSION:-0.15.0}
|
image: ${PLASMA_PLASMA_CONSENSUS_IMAGE:-ghcr.io/plasmalaboratories/plasma-consensus-public}:${PLASMA_TESTNET_PLASMA_CONSENSUS_VERSION:-1.1.0}
|
||||||
user: 0:0
|
user: 0:0
|
||||||
ports:
|
ports:
|
||||||
- 19566:34070
|
- 19566:34070
|
||||||
@@ -212,8 +213,7 @@ services:
|
|||||||
exec plasma-cli observer \
|
exec plasma-cli observer \
|
||||||
--config-path /tmp/non-validator.toml \
|
--config-path /tmp/non-validator.toml \
|
||||||
--no-color \
|
--no-color \
|
||||||
--timeout-stream-manager 5s \
|
--timeout-stream-manager 10ms \
|
||||||
--nat=extip:${IP}:19566 \
|
|
||||||
--telemetry.enable-metrics \
|
--telemetry.enable-metrics \
|
||||||
--telemetry.enable-health \
|
--telemetry.enable-health \
|
||||||
--telemetry.host 0.0.0.0 \
|
--telemetry.host 0.0.0.0 \
|
||||||
|
|||||||
@@ -13,52 +13,6 @@ identity_file_path = "/consensus/ec-secp256k1-non-validator.der"
|
|||||||
trusted_only = false
|
trusted_only = false
|
||||||
discovery.enabled = true
|
discovery.enabled = true
|
||||||
|
|
||||||
[api]
|
|
||||||
enabled = true
|
|
||||||
host = "0.0.0.0"
|
|
||||||
port = 35070
|
|
||||||
|
|
||||||
[validators]
|
|
||||||
[validators.0]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-0.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-0.hex"
|
|
||||||
|
|
||||||
[validators.1]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-1.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-1.hex"
|
|
||||||
|
|
||||||
[validators.2]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-2.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-2.hex"
|
|
||||||
|
|
||||||
[validators.3]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-3.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-3.hex"
|
|
||||||
|
|
||||||
[validators.4]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-4.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-4.hex"
|
|
||||||
|
|
||||||
[validators.5]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-5.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-5.hex"
|
|
||||||
|
|
||||||
[validators.6]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-6.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-6.hex"
|
|
||||||
|
|
||||||
[validators.7]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-7.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-7.hex"
|
|
||||||
|
|
||||||
[validators.8]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-8.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-8.hex"
|
|
||||||
|
|
||||||
[validators.9]
|
|
||||||
validator_keystore_pk_file_path = "/node/keys/bls12-381-public-key-9.hex"
|
|
||||||
identity_file_path = "/node/identities/ec-secp256k1-validator-public-compressed-9.hex"
|
|
||||||
|
|
||||||
[network.bootstrap_nodes.0]
|
[network.bootstrap_nodes.0]
|
||||||
api_host = "plasma-testnet-observer-cs-1.plasmalabs.tech"
|
api_host = "plasma-testnet-observer-cs-1.plasmalabs.tech"
|
||||||
p2p_port = 34070
|
p2p_port = 34070
|
||||||
@@ -73,3 +27,58 @@ peer_id = "16Uiu2HAm3gGfJyWKSEzi67nL9CYc1umG5DdGp7TFHZSaWvd5N2AK"
|
|||||||
api_host = "plasma-testnet-observer-cs-9.plasmalabs.tech"
|
api_host = "plasma-testnet-observer-cs-9.plasmalabs.tech"
|
||||||
p2p_port = 34070
|
p2p_port = 34070
|
||||||
peer_id = "16Uiu2HAmLzq4LCDQ8FNSPs5ESsWAiSUfDQjXjtbrx3fG9M9qZrU6"
|
peer_id = "16Uiu2HAmLzq4LCDQ8FNSPs5ESsWAiSUfDQjXjtbrx3fG9M9qZrU6"
|
||||||
|
|
||||||
|
[network.bls_peer_ids]
|
||||||
|
b2f8ba24adce5aae4c4355bfe662c7abef765fd7d18fc1facd88db53da919039ae1fa59e2fd334c35f8644934f0313af = "16Uiu2HAm9VojHMAAMAKF7a4cdrsNDTaYis3oFWbK3JecthZA4gMk"
|
||||||
|
a6c1f484342d0f01ec0cf53b5d467e5547aba508298ee95da7342663fd3e6dfd06ed386d4581900ce88074cb21a26bd4 = "16Uiu2HAm4SQW76nEKeGZwQ8azRtYfNNC1mZb4khsJR3rvhaqPv3h"
|
||||||
|
94d99d2d5751d48a0b7f653ed81bcef9c097c8eb808f0bd05867a757462924d22ffd8168e6b3f45ea52ce52cf7d3487a = "16Uiu2HAmGNEFW4EFP2pDkN6yoa5JzB7iqvad4NqXRnuepqNyUs3x"
|
||||||
|
87a3288cece2f105f0c61a88430355a2ffcbf86a41c6f5a112b61e7dfd103ddd00845127ec7eaed8608f3c052f80a12e = "16Uiu2HAmUx7Vm3voDz4Wt5KiQCDRqRMwNuip5vArpviXn3psZQhk"
|
||||||
|
93f351dc7f43e39ed8b4c3bcc96ad52ba643c85965e2bdeede33a8c1ff0904433848bc5d4a84246ee60e459814079203 = "16Uiu2HAmLkucJtxQ6oa4TTmjn45dVQbm8iPx2HAKJE4NMGiE2XAQ"
|
||||||
|
87ff47c8986af8589af85367c5660ed0b3f5b0f3368f4c873fe7944e80ca793d8f5d62235685fc5755272eefda0f0aed = "16Uiu2HAmAPSLPskKdM22Y9maw7T8uwK9uH9GzDy8FNGP5oj9vmMm"
|
||||||
|
a47bcbbec4bc7af7d8d83ef289f9607671e76dd5820a2066cb3f5e9bdcae1fba6aac1ba4732d2f118b1e2d1a573f4dfd = "16Uiu2HAkzsMspP7FosFWUN554jiB9bVqTVkRNGUZs4ersaLpNuRU"
|
||||||
|
a3fbd91ed97dc4996d00c0dd14d21ae68ca21be53e1701001a168fea4a5f4499f1e48211aee54aca005c743bfd795f29 = "16Uiu2HAm7FvFMyWK7Hpzu3ZXX8fku8rJd5YY4rCzWtck6bgm7Wj3"
|
||||||
|
80003b3ef56d2e983332c5ae656f67b85a88996ea6d413bef67e294edcb37a991888fe6a4d6d63e25a8750fc694b76a0 = "16Uiu2HAmESAECJ1Y4W7GK2EmpxSUfWoCbs5CidE1pu4vEEGb2qBM"
|
||||||
|
af35d8fdde248ecb6aed849f7336052edab1da635bd46303ebc14ce5f7befa47be0691d609c7636c1427dd7cc4bc353c = "16Uiu2HAkzVxFvwUvmYgr1NUBX5WhSpFJSbDrVYSwTd5pSgkFfTtL"
|
||||||
|
|
||||||
|
[api]
|
||||||
|
enabled = true
|
||||||
|
host = "0.0.0.0"
|
||||||
|
port = 35070
|
||||||
|
|
||||||
|
[chain.aquila]
|
||||||
|
activation_height = 33640000
|
||||||
|
contract_address = "0x6c50b8ca8EeAa1c75dEe5b5EA79772AcAbc92F48"
|
||||||
|
epoch_length = 20000
|
||||||
|
handoff_window = 10000
|
||||||
|
speculative_prefetch = 9999
|
||||||
|
unsafe_allow_short_handoff_window = false
|
||||||
|
|
||||||
|
[chain.static_committee.0]
|
||||||
|
bls_public_key = "b2f8ba24adce5aae4c4355bfe662c7abef765fd7d18fc1facd88db53da919039ae1fa59e2fd334c35f8644934f0313af"
|
||||||
|
|
||||||
|
[chain.static_committee.1]
|
||||||
|
bls_public_key = "a6c1f484342d0f01ec0cf53b5d467e5547aba508298ee95da7342663fd3e6dfd06ed386d4581900ce88074cb21a26bd4"
|
||||||
|
|
||||||
|
[chain.static_committee.2]
|
||||||
|
bls_public_key = "94d99d2d5751d48a0b7f653ed81bcef9c097c8eb808f0bd05867a757462924d22ffd8168e6b3f45ea52ce52cf7d3487a"
|
||||||
|
|
||||||
|
[chain.static_committee.3]
|
||||||
|
bls_public_key = "87a3288cece2f105f0c61a88430355a2ffcbf86a41c6f5a112b61e7dfd103ddd00845127ec7eaed8608f3c052f80a12e"
|
||||||
|
|
||||||
|
[chain.static_committee.4]
|
||||||
|
bls_public_key = "93f351dc7f43e39ed8b4c3bcc96ad52ba643c85965e2bdeede33a8c1ff0904433848bc5d4a84246ee60e459814079203"
|
||||||
|
|
||||||
|
[chain.static_committee.5]
|
||||||
|
bls_public_key = "87ff47c8986af8589af85367c5660ed0b3f5b0f3368f4c873fe7944e80ca793d8f5d62235685fc5755272eefda0f0aed"
|
||||||
|
|
||||||
|
[chain.static_committee.6]
|
||||||
|
bls_public_key = "a47bcbbec4bc7af7d8d83ef289f9607671e76dd5820a2066cb3f5e9bdcae1fba6aac1ba4732d2f118b1e2d1a573f4dfd"
|
||||||
|
|
||||||
|
[chain.static_committee.7]
|
||||||
|
bls_public_key = "a3fbd91ed97dc4996d00c0dd14d21ae68ca21be53e1701001a168fea4a5f4499f1e48211aee54aca005c743bfd795f29"
|
||||||
|
|
||||||
|
[chain.static_committee.8]
|
||||||
|
bls_public_key = "80003b3ef56d2e983332c5ae656f67b85a88996ea6d413bef67e294edcb37a991888fe6a4d6d63e25a8750fc694b76a0"
|
||||||
|
|
||||||
|
[chain.static_committee.9]
|
||||||
|
bls_public_key = "af35d8fdde248ecb6aed849f7336052edab1da635bd46303ebc14ce5f7befa47be0691d609c7636c1427dd7cc4bc353c"
|
||||||
|
|||||||
Reference in New Issue
Block a user