This commit is contained in:
Brain🧠
2025-03-19 11:39:02 +02:00
19 changed files with 379 additions and 94 deletions

View File

@@ -1,16 +1,16 @@
{ {
"genesis": { "genesis": {
"l1": { "l1": {
"hash": "0xfcfb8d586bdae763f1189988789211c69eb893a895e7ba48be3ca6289f0941b7", "hash": "0x17728cf4d8e0b4f292d2390a869fd7c632d39e72efb00ca3462b4387c6aa2437",
"number": 19300102 "number": 5044255
}, },
"l2": { "l2": {
"hash": "0xb689b35ef29d0bec5816938e0e52683c7257d2e325420ea69b739a2be4754b89", "hash": "0x26a1c0faad7b041f34569a1bb383f00ab74b335883a44bed53e9f41ced5fd906",
"number": 0 "number": 0
}, },
"l2_time": 1708809815, "l2_time": 1704686688,
"system_config": { "system_config": {
"batcherAddr": "0x415c8893d514f9bc5211d36eeda4183226b84aa7", "batcherAddr": "0xba26fee2fa917443e05e65de8d4350bcd2f59222",
"overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc", "overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc",
"scalar": "0x00000000000000000000000000000000000000000000000000000000000a6fe0", "scalar": "0x00000000000000000000000000000000000000000000000000000000000a6fe0",
"gasLimit": 30000000 "gasLimit": 30000000
@@ -20,12 +20,14 @@
"max_sequencer_drift": 600, "max_sequencer_drift": 600,
"seq_window_size": 3600, "seq_window_size": 3600,
"channel_timeout": 300, "channel_timeout": 300,
"l1_chain_id": 1, "l1_chain_id": 11155111,
"l2_chain_id": 81457, "l2_chain_id": 168587773,
"regolith_time": 0, "regolith_time": 0,
"canyon_time": 0, "canyon_time": 0,
"batch_inbox_address": "0xff00000000000000000000000000000000081457", "delta_time": 1713999600,
"deposit_contract_address": "0x0ec68c5b10f21effb74f2a5c61dfe6b08c0db6cb", "ecotone_time": 1713999600,
"l1_system_config_address": "0x5531dcff39ec1ec727c4c5d2fc49835368f805a9", "batch_inbox_address": "0x1c3b85a2108784eab6a4bf56cdd6f722e415b331",
"deposit_contract_address": "0x2757e4430e694f27b73ec9c02257cab3a498c8c5",
"l1_system_config_address": "0x329faf078c364a316e08bf6a17b7eee6ae75a613",
"protocol_versions_address": "0x0000000000000000000000000000000000000000" "protocol_versions_address": "0x0000000000000000000000000000000000000000"
} }

View File

@@ -24,6 +24,8 @@
"l2_chain_id": 168587773, "l2_chain_id": 168587773,
"regolith_time": 0, "regolith_time": 0,
"canyon_time": 0, "canyon_time": 0,
"delta_time": 1713999600,
"ecotone_time": 1713999600,
"batch_inbox_address": "0x1c3b85a2108784eab6a4bf56cdd6f722e415b331", "batch_inbox_address": "0x1c3b85a2108784eab6a4bf56cdd6f722e415b331",
"deposit_contract_address": "0x2757e4430e694f27b73ec9c02257cab3a498c8c5", "deposit_contract_address": "0x2757e4430e694f27b73ec9c02257cab3a498c8c5",
"l1_system_config_address": "0x329faf078c364a316e08bf6a17b7eee6ae75a613", "l1_system_config_address": "0x329faf078c364a316e08bf6a17b7eee6ae75a613",

View File

@@ -3,11 +3,11 @@
RPC_URL="$1" RPC_URL="$1"
ref="$2" ref="$2"
timeout=2 # seconds timeout=5 # seconds
response_file=$(mktemp) response_file=$(mktemp)
http_status_code=$(curl --ipv4 -m 1 -s -X POST -w "%{http_code}" -o "$response_file" -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["latest", false],"id":1}' $RPC_URL) http_status_code=$(curl --ipv4 -m $timeout -s -X POST -w "%{http_code}" -o "$response_file" -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["latest", false],"id":1}' $RPC_URL)
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
if [[ $http_status_code -eq 200 ]]; then if [[ $http_status_code -eq 200 ]]; then
@@ -23,9 +23,14 @@ if [ $? -eq 0 ]; then
latest_block_number=$(echo "$response" | jq -r '.result.number') latest_block_number=$(echo "$response" | jq -r '.result.number')
latest_block_hash=$(echo "$response" | jq -r '.result.hash') latest_block_hash=$(echo "$response" | jq -r '.result.hash')
response_file2=$(mktemp) response_file2=$(mktemp)
sleep 3 # to give the reference node more time to import the block if it is very current
http_status_code2=$(curl --ipv4 -m $timeout -s -X POST -w "%{http_code}" -o "$response_file2" -H "Content-Type: application/json" --data "{\"jsonrpc\":\"2.0\",\"method\":\"eth_getBlockByNumber\",\"params\":[\"$latest_block_number\", false],\"id\":1}" $ref) http_status_code2=$(curl --ipv4 -m $timeout -s -X POST -w "%{http_code}" -o "$response_file2" -H "Content-Type: application/json" --data "{\"jsonrpc\":\"2.0\",\"method\":\"eth_getBlockByNumber\",\"params\":[\"$latest_block_number\", false],\"id\":1}" $ref)
if [ $? -eq 0 ]; then
curl_code=$?
if [ $curl_code -eq 0 ]; then
if [[ $http_status_code2 -eq 200 ]]; then if [[ $http_status_code2 -eq 200 ]]; then
response2=$(cat "$response_file2") response2=$(cat "$response_file2")
latest_block_hash2=$(echo "$response2" | jq -r '.result.hash') latest_block_hash2=$(echo "$response2" | jq -r '.result.hash')
@@ -36,8 +41,10 @@ if [ $? -eq 0 ]; then
response_file3=$(mktemp) response_file3=$(mktemp)
http_status_code=$(curl --ipv4 -m $timeout -s -X POST -w "%{http_code}" -o "$response_file3" -H "Content-Type: application/json" --data "{\"jsonrpc\":\"2.0\",\"method\":\"eth_getBlockByNumber\",\"params\":[\"latest\", false],\"id\":1}" $ref) http_status_code=$(curl --ipv4 -m $timeout -s -X POST -w "%{http_code}" -o "$response_file3" -H "Content-Type: application/json" --data "{\"jsonrpc\":\"2.0\",\"method\":\"eth_getBlockByNumber\",\"params\":[\"latest\", false],\"id\":1}" $ref)
if [ $? -eq 0 ]; then curl_code=$?
if [ $curl_code -eq 0 ]; then
if [[ $http_status_code -eq 200 ]]; then if [[ $http_status_code -eq 200 ]]; then
response3=$(cat "$response_file3") response3=$(cat "$response_file3")
latest_block_timestamp3=$(echo "$response3" | jq -r '.result.timestamp') latest_block_timestamp3=$(echo "$response3" | jq -r '.result.timestamp')
@@ -62,11 +69,14 @@ if [ $? -eq 0 ]; then
echo "forked" echo "forked"
exit 1 exit 1
fi fi
fi else
echo "unverified ($http_status_code2)"
exit 1
fi
fi fi
echo "unverified" echo "unverified ($curl_code)"
exit 1 exit 0
elif [ $time_difference -lt 60 ]; then elif [ $time_difference -lt 60 ]; then
echo "online" echo "online"
exit 0 exit 0

View File

@@ -2,7 +2,7 @@ version: '3.1'
services: services:
geth-holesky: geth-holesky:
image: ethereum/client-go:v1.14.3 image: ethereum/client-go:${GETH_VERSION:-v1.15.5}
expose: expose:
# HTTP server / GraphQL API # HTTP server / GraphQL API
- 8545 - 8545
@@ -61,7 +61,7 @@ services:
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus" - "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
prysm-holesky: prysm-holesky:
image: prysmaticlabs/prysm-beacon-chain:v5.0.3 image: prysmaticlabs/prysm-beacon-chain:${PRYSM_VERSION:-v5.3.1}
expose: expose:
- 24638 - 24638
ports: ports:

View File

@@ -2,7 +2,7 @@ version: '3.1'
services: services:
geth-sepolia: geth-sepolia:
image: ethereum/client-go:v1.14.3 image: ethereum/client-go:${GETH_VERSION:-v1.14.3}
expose: expose:
# HTTP server / GraphQL API # HTTP server / GraphQL API
- 8545 - 8545
@@ -67,7 +67,7 @@ services:
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus" - "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
prysm-sepolia: prysm-sepolia:
image: prysmaticlabs/prysm-beacon-chain:v5.0.3 image: prysmaticlabs/prysm-beacon-chain:${PRYSM_VERSION:-v5.0.3}
ports: ports:
#- "127.0.0.1:3500:3500" #- "127.0.0.1:3500:3500"
- "13000:13000" - "13000:13000"

262
gnosis/mainnet/genesis.json Normal file

File diff suppressed because one or more lines are too long

View File

@@ -1,32 +1,32 @@
{ {
"genesis": { "genesis": {
"l1": { "l1": {
"hash": "0x614050145039f11a778f1bd3c85ce2c1f3989492dbc544911fab9a7247e81ca4", "hash": "0x614050145039f11a778f1bd3c85ce2c1f3989492dbc544911fab9a7247e81ca4",
"number": 19437305 "number": 19437305
},
"l2": {
"hash": "0xf70a2270b05820a2b335e70ab9ce91e42e15f50d82db73d9c63085711b312fc8",
"number": 61171946
},
"l2_time": 1710468791,
"system_config": {
"batcherAddr": "0x2f40d796917ffb642bd2e2bdd2c762a5e40fd749",
"overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc",
"scalar": "0x0000000000000000000000000000000000000000000000000000000000002710",
"gasLimit": 200000000000,
"baseFee": 20000000
}
}, },
"block_time": 2, "l2": {
"max_sequencer_drift": 600, "hash": "0xf70a2270b05820a2b335e70ab9ce91e42e15f50d82db73d9c63085711b312fc8",
"seq_window_size": 3600, "number": 61171946
"channel_timeout": 300, },
"l1_chain_id": 1, "l2_time": 1710468791,
"l2_chain_id": 5000, "system_config": {
"regolith_time": 0, "batcherAddr": "0x2f40d796917ffb642bd2e2bdd2c762a5e40fd749",
"batch_inbox_address": "0xff00000000000000000000000000000000000000", "overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc",
"deposit_contract_address": "0xc54cb22944f2be476e02decfcd7e3e7d3e15a8fb", "scalar": "0x0000000000000000000000000000000000000000000000000000000000002710",
"l1_system_config_address": "0x427ea0710fa5252057f0d88274f7aeb308386caf", "gasLimit": 200000000000,
"mantle_da_switch": true, "baseFee": 20000000
"datalayr_service_manager_addr": "0x5BD63a7ECc13b955C4F57e3F12A64c10263C14c1" }
} },
"block_time": 2,
"max_sequencer_drift": 600,
"seq_window_size": 3600,
"channel_timeout": 300,
"l1_chain_id": 1,
"l2_chain_id": 5000,
"regolith_time": 0,
"batch_inbox_address": "0xFFEEDDCcBbAA0000000000000000000000000000",
"deposit_contract_address": "0xc54cb22944f2be476e02decfcd7e3e7d3e15a8fb",
"l1_system_config_address": "0x427ea0710fa5252057f0d88274f7aeb308386caf",
"mantle_da_switch": true,
"datalayr_service_manager_addr": "0x5BD63a7ECc13b955C4F57e3F12A64c10263C14c1"
}

View File

@@ -26,6 +26,7 @@ server {
# Disable buffering for real-time traffic # Disable buffering for real-time traffic
proxy_buffering off; proxy_buffering off;
access_log off;
#set $proxy_read_timeout 3600s; #set $proxy_read_timeout 3600s;
#set $proxy_send_timeout 3600s; #set $proxy_send_timeout 3600s;

View File

@@ -1,9 +1,7 @@
version: '3.1'
services: services:
op-blast-mainnet-fullnode: op-blast-mainnet-fullnode:
image: blastio/blast-geth:v1.1.0-mainnet image: blastio/blast-geth:mainnet-v1.1.1
volumes: volumes:
- blast-mainnet-fullnode:/data - blast-mainnet-fullnode:/data
- ./blast-io:/config:rw - ./blast-io:/config:rw
@@ -32,7 +30,7 @@ services:
- "GETH_LIGHT_MAXPEERS=0" - "GETH_LIGHT_MAXPEERS=0"
- "GETH_MAXPEERS=0" - "GETH_MAXPEERS=0"
- "GETH_OVERRIDE_CANYON=0" - "GETH_OVERRIDE_CANYON=0"
- "GETH_OVERRIDE_DELTA=1716843599" #- "GETH_OVERRIDE_DELTA=1716843599"
- "GETH_OVERRIDE_ECOTONE=1716843599" - "GETH_OVERRIDE_ECOTONE=1716843599"
expose: expose:
- 9545 - 9545
@@ -52,7 +50,7 @@ services:
- "traefik.http.routers.blast.middlewares=blast-stripprefix, ipwhitelist" - "traefik.http.routers.blast.middlewares=blast-stripprefix, ipwhitelist"
op-blast-mainnet-fullnode-node: op-blast-mainnet-fullnode-node:
image: blastio/blast-optimism:v1.1.0-mainnet image: blastio/blast-optimism:mainnet-v1.1.1
volumes: volumes:
- ./blast-io:/config - ./blast-io:/config
- .jwtsecret:/jwtsecret - .jwtsecret:/jwtsecret
@@ -74,8 +72,8 @@ services:
- "OP_NODE_L2_SKIP_SYNC_START_CHECK=true" - "OP_NODE_L2_SKIP_SYNC_START_CHECK=true"
- "OP_NODE_P2P_LISTEN_TCP_PORT=25037" - "OP_NODE_P2P_LISTEN_TCP_PORT=25037"
- "OP_NODE_ROLLUP_CONFIG=/config/mainnet/rollup.json" - "OP_NODE_ROLLUP_CONFIG=/config/mainnet/rollup.json"
- "OP_NODE_OVERRIDE_DELTA=1716843599" #- "OP_NODE_OVERRIDE_DELTA=1716843599"
- "OP_NODE_OVERRIDE_ECOTONE=1716843599" #- "OP_NODE_OVERRIDE_ECOTONE=1716843599"
command: > command: >
op-node op-node
depends_on: depends_on:

View File

@@ -3,7 +3,7 @@ version: '3.1'
services: services:
op-blast-sepolia: op-blast-sepolia:
image: blastio/blast-geth:sepolia image: blastio/blast-geth:sepolia-v1.2.3
pull_policy: always pull_policy: always
volumes: volumes:
- blast-sepolia:/data - blast-sepolia:/data
@@ -33,7 +33,7 @@ services:
- "GETH_LIGHT_MAXPEERS=0" - "GETH_LIGHT_MAXPEERS=0"
- "GETH_MAXPEERS=0" - "GETH_MAXPEERS=0"
- "GETH_OVERRIDE_CANYON=0" - "GETH_OVERRIDE_CANYON=0"
- "GETH_OVERRIDE_DELTA=1713999600" #- "GETH_OVERRIDE_DELTA=1713999600"
- "GETH_OVERRIDE_ECOTONE=1713999600" - "GETH_OVERRIDE_ECOTONE=1713999600"
expose: expose:
- 9545 - 9545
@@ -53,7 +53,7 @@ services:
- "traefik.http.routers.blast-sepolia.middlewares=blast-sepolia-stripprefix, ipwhitelist" - "traefik.http.routers.blast-sepolia.middlewares=blast-sepolia-stripprefix, ipwhitelist"
op-blast-sepolia-node: op-blast-sepolia-node:
image: blastio/blast-optimism:sepolia image: blastio/blast-optimism:sepolia-v1.2.3
pull_policy: always pull_policy: always
volumes: volumes:
- ./blast-io:/config - ./blast-io:/config
@@ -76,8 +76,8 @@ services:
#- "OP_NODE_L2_SKIP_SYNC_START_CHECK=true" #- "OP_NODE_L2_SKIP_SYNC_START_CHECK=true"
- "OP_NODE_P2P_LISTEN_TCP_PORT=12018" - "OP_NODE_P2P_LISTEN_TCP_PORT=12018"
- "OP_NODE_ROLLUP_CONFIG=/config/sepolia/rollup.json" - "OP_NODE_ROLLUP_CONFIG=/config/sepolia/rollup.json"
- "OP_NODE_OVERRIDE_DELTA=1713999600" #- "OP_NODE_OVERRIDE_DELTA=1713999600"
- "OP_NODE_OVERRIDE_ECOTONE=1713999600" #- "OP_NODE_OVERRIDE_ECOTONE=1713999600"
command: > command: >
op-node op-node
depends_on: depends_on:

View File

@@ -115,6 +115,7 @@ uDdWRwgiMr"
- "OP_NODE_OVERRIDE_GRANITE=1723478400" - "OP_NODE_OVERRIDE_GRANITE=1723478400"
- "OP_NODE_OVERRIDE_HOLOCENE=1732633200" - "OP_NODE_OVERRIDE_HOLOCENE=1732633200"
- "OP_NODE_OVERRICE_PECTRA=1741159776" - "OP_NODE_OVERRICE_PECTRA=1741159776"
- "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400"
networks: networks:
- chains - chains

View File

@@ -1,8 +1,6 @@
version: '3.1'
services: services:
mantle-fullnode: mantle-fullnode:
image: mantlenetworkio/op-geth:v1.0.2 image: mantlenetworkio/mantle-op-geth:v1.1.1
expose: expose:
- 8545 # RPC / Websocket - 8545 # RPC / Websocket
- 3851 # P2P TCP (currently unused) - 3851 # P2P TCP (currently unused)
@@ -66,7 +64,7 @@ services:
mantle-fullnode-node: mantle-fullnode-node:
image: mantlenetworkio/op-node:v1.0.2 image: mantlenetworkio/mantle-op-node:v1.1.1
depends_on: depends_on:
- mantle-key-generator - mantle-key-generator
- mantle-fullnode - mantle-fullnode
@@ -106,9 +104,9 @@ services:
OP_NODE_PPROF_ADDR: '0.0.0.0' OP_NODE_PPROF_ADDR: '0.0.0.0'
OP_NODE_P2P_DISCOVERY_PATH: '/op-node/opnode_discovery_db' OP_NODE_P2P_DISCOVERY_PATH: '/op-node/opnode_discovery_db'
OP_NODE_P2P_PEERSTORE_PATH: '/op-node/opnode_peerstore_db' OP_NODE_P2P_PEERSTORE_PATH: '/op-node/opnode_peerstore_db'
OP_NODE_INDEXER_SOCKET: 'da-indexer-api.mantle.xyz:80' OP_NODE_INDEXER_SOCKET: 'da-indexer-api.mantle.xyz:443'
OP_NODE_INDEXER_ENABLE: 'true' OP_NODE_INDEXER_ENABLE: 'true'
OP_NODE_L2_BACKUP_UNSAFE_SYNC_RPC: ${MANTLE_L2_BACKUP_RPC:-https://rpc.mantle.xyz} OP_NODE_L2_BACKUP_UNSAFE_SYNC_RPC: https://rpc.mantle.xyz
OP_NODE_P2P_STATIC: '/dns4/peer0.mantle.xyz/tcp/9003/p2p/16Uiu2HAmKVKzUAns2gLhZAz1PYcbnhY3WpxNxUZYeTN1x29tNBAW,/dns4/peer1.mantle.xyz/tcp/9003/p2p/16Uiu2HAm1AiZtVp8f5C8LvpSTAXC6GtwqAVKnB3VLawWYSEBmcFN,/dns4/peer2.mantle.xyz/tcp/9003/p2p/16Uiu2HAm2UHVKiPXpovs8VbbUQVPr7feBAqBJdFsH1z5XDiLEvHT' OP_NODE_P2P_STATIC: '/dns4/peer0.mantle.xyz/tcp/9003/p2p/16Uiu2HAmKVKzUAns2gLhZAz1PYcbnhY3WpxNxUZYeTN1x29tNBAW,/dns4/peer1.mantle.xyz/tcp/9003/p2p/16Uiu2HAm1AiZtVp8f5C8LvpSTAXC6GtwqAVKnB3VLawWYSEBmcFN,/dns4/peer2.mantle.xyz/tcp/9003/p2p/16Uiu2HAm2UHVKiPXpovs8VbbUQVPr7feBAqBJdFsH1z5XDiLEvHT'
OP_NODE_SEQUENCER_ENABLED: 'false' OP_NODE_SEQUENCER_ENABLED: 'false'
OP_NODE_P2P_AGENT: 'mantle' OP_NODE_P2P_AGENT: 'mantle'

View File

@@ -3,7 +3,7 @@ FROM golang:1.22 as op
WORKDIR /app WORKDIR /app
ARG OP_REPO=https://github.com/ethereum-optimism/optimism.git ARG OP_REPO=https://github.com/ethereum-optimism/optimism.git
ARG OP_VERSION=v1.10.3 ARG OP_VERSION=v1.12.2
ARG OP_PATCH ARG OP_PATCH
RUN curl -fsSL https://github.com/casey/just/releases/download/1.38.0/just-1.38.0-x86_64-unknown-linux-musl.tar.gz | tar -xzf - -C /usr/local/bin RUN curl -fsSL https://github.com/casey/just/releases/download/1.38.0/just-1.38.0-x86_64-unknown-linux-musl.tar.gz | tar -xzf - -C /usr/local/bin
@@ -29,7 +29,7 @@ FROM golang:1.22 as geth
WORKDIR /app WORKDIR /app
ARG GETH_REPO=https://github.com/ethereum-optimism/op-geth.git ARG GETH_REPO=https://github.com/ethereum-optimism/op-geth.git
ARG GETH_VERSION=v1.101411.6 ARG GETH_VERSION=v1.101503.1
# avoid depth=1, so the geth build can read tags # avoid depth=1, so the geth build can read tags
RUN git clone $GETH_REPO --branch $GETH_VERSION --single-branch . && \ RUN git clone $GETH_REPO --branch $GETH_VERSION --single-branch . && \

View File

@@ -54,8 +54,8 @@
}, },
"ethereum": { "ethereum": {
"id": 1, "id": 1,
"urls": [ "urls": [
"https://ethereum-rpc.publicnode.com" "https://eth.drpc.org"
], ],
"default": [ "default": [
"erigon-mainnet-minimal", "erigon-mainnet-minimal",
@@ -85,7 +85,7 @@
"open-campus-codex-sepolia": { "open-campus-codex-sepolia": {
"id": 656476, "id": 656476,
"urls": [ "urls": [
"https://rpc.open-campus-codex.gelato.digital" "https://open-campus-codex-sepolia.drpc.org"
], ],
"default": ["arb-opencampuscodex"] "default": ["arb-opencampuscodex"]
}, },
@@ -175,8 +175,8 @@
}, },
"arbitrum-sepolia": { "arbitrum-sepolia": {
"id": 421614, "id": 421614,
"urls": [ "urls": [
"https://arbitrum-sepolia.blockpi.network/v1/rpc/public" "https://arbitrum-sepolia.drpc.org"
], ],
"default": [ "default": [
"arbitrum-sepolia-fullnode", "arbitrum-sepolia-fullnode",
@@ -215,7 +215,7 @@
}, },
"tron": { "tron": {
"id": 728126428, "id": 728126428,
"urls": ["https://tron-evm-rpc.publicnode.com"], "urls": ["https://api.trongrid.io/jsonrpc"],
"default": ["tron"] "default": ["tron"]
}, },
"viction": { "viction": {
@@ -285,8 +285,8 @@
}, },
"fantom-testnet": { "fantom-testnet": {
"id": 4002, "id": 4002,
"urls": [ "urls": [
"https://fantom-testnet.public.blastapi.io" "https://rpc.testnet.fantom.network"
], ],
"default": [ "default": [
"fantom-testnet" "fantom-testnet"
@@ -435,7 +435,8 @@
}, },
"bsc": { "bsc": {
"id": 56, "id": 56,
"urls": [ "urls": [
"https://binance.nodereal.io",
"https://bsc.drpc.org" "https://bsc.drpc.org"
], ],
"default": [ "default": [

View File

@@ -2,10 +2,11 @@ version: '3.1'
services: services:
gnosis-reth: gnosis-reth:
image: stakesquid/reth-gnosis:latest image: ghcr.io/gnosischain/reth_gnosis@sha256:2107522cb60a052df3039c54d215c2f861b4107193829687f80e3e07653635a9
user: root user: root
volumes: volumes:
- "reth-gnosis:/root/.local/share/reth/gnosis" - "reth-gnosis:/root/.local/share/reth/gnosis"
- "./gnosis/mainnet/genesis.json:/genesis.json:ro"
- "/slowdisk:/slowdisk" - "/slowdisk:/slowdisk"
- ".jwtsecret:/jwtsecret" - ".jwtsecret:/jwtsecret"
expose: expose:
@@ -16,7 +17,7 @@ services:
- "23865:23865" - "23865:23865"
- "23865:23865/udp" - "23865:23865/udp"
restart: unless-stopped restart: unless-stopped
command: node --chain gnosis --rpc-max-connections 429496729 --metrics 0.0.0.0:9001 --http --http.addr 0.0.0.0 --http.port 8545 --ws --ws.addr 0.0.0.0 --ws.port 8545 --ws.origins '*' --port 23865 --discovery.port 23865 --authrpc.addr 0.0.0.0 --authrpc.jwtsecret /jwtsecret --http.api "debug,eth,net,trace,txpool,web3,rpc,reth,admin" --ws.api "debug,eth,net,trace,txpool,web3,rpc,reth,admin" --http.corsdomain '*' --rpc.max-logs-per-response 1100000 --rpc.gascap 600000000 command: node --chain /genesis.json --rpc-max-connections 429496729 --metrics 0.0.0.0:9001 --http --http.addr 0.0.0.0 --http.port 8545 --ws --ws.addr 0.0.0.0 --ws.port 8545 --ws.origins '*' --port 23865 --discovery.port 23865 --authrpc.addr 0.0.0.0 --authrpc.jwtsecret /jwtsecret --http.api "debug,eth,net,trace,txpool,web3,rpc,reth,admin" --ws.api "debug,eth,net,trace,txpool,web3,rpc,reth,admin" --http.corsdomain '*' --rpc.max-logs-per-response 1100000 --rpc.gascap 600000000
stop_grace_period: 1m stop_grace_period: 1m
labels: labels:
- "prometheus-scrape.enabled=true" - "prometheus-scrape.enabled=true"

View File

@@ -1,6 +1,6 @@
services: services:
rsk-testnet-fullnode: rsk-testnet-fullnode:
image: rsksmart/rskj:ARROWHEAD-6.5.0 image: rsksmart/rskj:LOVELL-7.0.0
stop_grace_period: 5m stop_grace_period: 5m
user: root user: root
ulimits: ulimits:

View File

@@ -1,6 +1,6 @@
services: services:
rsk-fullnode: rsk-fullnode:
image: rsksmart/rskj:ARROWHEAD-6.5.0 image: rsksmart/rskj:LOVELL-7.0.0
stop_grace_period: 5m stop_grace_period: 5m
user: root user: root
ulimits: ulimits:

View File

@@ -34,9 +34,18 @@ for part in "${parts[@]}"; do
if $include; then if $include; then
result=$($BASEPATH/sync-status.sh "${part%.yml}") result=$($BASEPATH/sync-status.sh "${part%.yml}")
if [ $? -ne 0 ]; then
any_failure=true if [ $? -ne 0 ]; then
fi if [[ "$result" == *"syncing"* ]]; then
# Allow exit status 1 if result contains "syncing"
true
elif [[ "$result" == *"lagging"* ]]; then
# Allow exit status 1 if result contains "syncing"
true
else
any_failure=true
fi
fi
echo "${part%.yml}: $result" echo "${part%.yml}: $result"
fi fi

View File

@@ -1,12 +1,12 @@
#!/bin/bash #!/bin/bash
IPS=$(/usr/bin/docker exec -t wireguard curl 10.13.13.1:5000/storage | jq -r '[.[].ip]|join(",")' | sed 's/\n//g') DIRTY_IPS=$(/usr/bin/docker exec -t wireguard curl 10.13.13.1:5000/storage | jq -r '[.[].ip]|join(",")' | sed 's/\n//g')
cleaned_ips=$(echo "$IPS" | sed -E 's/[^0-9.,]//g' | sed 's/,,*/,/g' | sed 's/,$//') IPS=$(echo "$DIRTY_IPS" | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}' | paste -sd "," -)
if [ -z "$cleaned_ips" ]; then if [ -z "$IPS" ]; then
echo "whitelist empty" echo "whitelist empty"
else else
sed -i.bak "s/WHITELIST=.*/WHITELIST=${cleaned_ips},192\.168\.0\.0\/16/g" /root/rpc/.env sed -i.bak "s/WHITELIST=.*/WHITELIST=${IPS},192\.168\.0\.0\/16/g" /root/rpc/.env
cd /root/rpc && docker compose up -d traefik cd /root/rpc && docker compose up -d traefik
fi fi