chainsaw massacre
This commit is contained in:
@@ -1,76 +0,0 @@
|
|||||||
Tested on Ubuntu 20.04.3 LTS
|
|
||||||
|
|
||||||
#### Prerequisites:
|
|
||||||
docker <br />
|
|
||||||
docker-compose <br />
|
|
||||||
DNS A-Record pointing to your server <br />
|
|
||||||
Wireguard-Server: Paste wireguard wg0.conf from wireguard-server to wireguard/config/wg0.conf <br />
|
|
||||||
.env File inside POKT-DOKT with secrets <br />
|
|
||||||
|
|
||||||
#### Usage
|
|
||||||
|
|
||||||
```
|
|
||||||
git clone https://github.com/cventastic/POKT_DOKT.git
|
|
||||||
cd POKT_DOKT
|
|
||||||
git reset --hard origin/main && git pull && ./util/prepare.sh
|
|
||||||
```
|
|
||||||
|
|
||||||
# EXAMPLES
|
|
||||||
|
|
||||||
Start POKT in relay mode:
|
|
||||||
```
|
|
||||||
command: pocket start --simulateRelay
|
|
||||||
```
|
|
||||||
If you want to activly relay. You also have to Stake! <br />
|
|
||||||
Testnet-Faucet: (https://faucet.pokt.network/) <br />
|
|
||||||
How to stake: https://docs.pokt.network/home/paths/node-runner#stake-the-validator <br />
|
|
||||||
|
|
||||||
POKT QUERY for simulate-relay mode:
|
|
||||||
```
|
|
||||||
Pockt-Testnet:
|
|
||||||
curl -X POST --data '{"relay_network_id":"0002","payload":{"data":"{}","method":"POST","path":"v1/query/height","headers":{}}}' http://localhost:8082/v1/client/sim
|
|
||||||
Pocket-Mainnet:
|
|
||||||
curl -X POST --data '{"relay_network_id":"0001","payload":{"data":"{}","method":"POST","path":"v1/query/height","headers":{}}}' http://localhost:8081/v1/client/sim
|
|
||||||
```
|
|
||||||
|
|
||||||
GETH QUERY (from whitelisted servers e.g pokt-test) for simulate-relay mode:
|
|
||||||
```
|
|
||||||
Pocket-Testnet:
|
|
||||||
curl -X POST --data '{"relay_network_id":"0020","payload":{"data":"{\"jsonrpc\":\"2.0\",\"method\":\"eth_getBalance\",\"params\":[\"0x1a8c807a6E4F624fCab01FEBf76a541d31B8345A\", \"latest\"],\"id\":1}","method":"POST","path":"","headers":{}}}' http://127.0.0.1:8082/v1/client/sim
|
|
||||||
curl -v -X POST --data '{"relay_network_id":"0020","payload":{"data":"{\"jsonrpc\":\"2.0\",\"method\":\"eth_syncing\",\"params\":[],\"id\":1}","method":"POST","path":"","headers":{}}}' http://127.0.0.1:8082/v1/client/sim
|
|
||||||
Pocket-Mainnet:
|
|
||||||
curl -X POST --data '{"relay_network_id":"0021","payload":{"data":"{\"jsonrpc\":\"2.0\",\"method\":\"eth_getBalance\",\"params\":[\"0x1a8c807a6E4F624fCab01FEBf76a541d31B8345A\", \"latest\"],\"id\":1}","method":"POST","path":"","headers":{}}}' http://127.0.0.1:8081/v1/client/sim
|
|
||||||
curl -v -X POST --data '{"relay_network_id":"0021","payload":{"data":"{\"jsonrpc\":\"2.0\",\"method\":\"eth_syncing\",\"params\":[],\"id\":1}","method":"POST","path":"","headers":{}}}' http://127.0.0.1:8081/v1/client/sim
|
|
||||||
```
|
|
||||||
|
|
||||||
STANDARD GETH QUERY (from whitelistet server)
|
|
||||||
```
|
|
||||||
curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}' https://$RPCNODE/goerli
|
|
||||||
```
|
|
||||||
|
|
||||||
# SSL
|
|
||||||
I you want to test SSL comment in:
|
|
||||||
```
|
|
||||||
# - "--certificatesresolvers.myresolver.acme.caserver=https://acme-staging-v02.api.letsencrypt.org/directory"
|
|
||||||
```
|
|
||||||
Check if there is a file here /traefic/letsencrypt/acme.json if yes, you have to delete it. <br />
|
|
||||||
Otherwise traefik will not issue the certificate for an existing domain. <br />
|
|
||||||
|
|
||||||
#### TODO !!!!
|
|
||||||
Bootstrapping from Snapshots <br />
|
|
||||||
Link-Timezone into containers.
|
|
||||||
|
|
||||||
AVALANCHE:
|
|
||||||
- Archive?
|
|
||||||
- Monitoring https://docs.avax.network/build/tools/dashboards/README
|
|
||||||
|
|
||||||
### Notes
|
|
||||||
#### Monitoring
|
|
||||||
Telegram get group ids the bot is in:
|
|
||||||
```curl -X POST https://api.telegram.org/bot$TELEGRAM_API_TOKEN/getUpdates```
|
|
||||||
There has to be an event in the channel for the bot to get updates
|
|
||||||
|
|
||||||
### neue NODE
|
|
||||||
.env
|
|
||||||
rpc-timeout
|
|
||||||
whitelist
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arb-alephzero-mainnet:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arb-alephzero-mainnet:/persistent'
|
|
||||||
- './arb/mainnet/alephzero/baseConfig.json:/baseConfig.json'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --conf.file=/baseConfig.json
|
|
||||||
- --persistent.ancient=/persistent/ancient
|
|
||||||
- --persistent.chain=/persistent/chain
|
|
||||||
- --persistent.global-config=/persistent/global-config
|
|
||||||
#- --execution.caching.archive=true
|
|
||||||
- --execution.caching.state-scheme=path
|
|
||||||
- --persistent.db-engine=pebble
|
|
||||||
- --execution.forwarding-target=https://rpc.alephzero.raas.gelato.cloud
|
|
||||||
- --node.feed.input.url=wss://feed.alephzero.raas.gelato.cloud
|
|
||||||
- --parent-chain.connection.url=${ALEPHZERO_MAINNET_PARENT_RPC}
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.port=8547
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --ws.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --node.data-availability.enable=true
|
|
||||||
- --node.data-availability.sequencer-inbox-address=0xF75206c49c1694594E3e69252E519434f1579876
|
|
||||||
- --node.data-availability.parent-chain-node-url=${ALEPHZERO_MAINNET_PARENT_RPC}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ALEPHZERO_MAINNET_PARENT_BEACON_REST}
|
|
||||||
- --node.data-availability.rest-aggregator.enable=true
|
|
||||||
- --node.data-availability.rest-aggregator.urls=https://das.alephzero.raas.gelato.cloud
|
|
||||||
- --metrics
|
|
||||||
- --metrics-server.addr=0.0.0.0
|
|
||||||
- --metrics-server.port=6070
|
|
||||||
- --log-type=json
|
|
||||||
- --node.sequencer=false
|
|
||||||
- --execution.sequencer.enable=false
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --node.batch-poster.enable=false
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.alephzero-mainnet-stripprefix.stripprefix.prefixes=/alephzero-mainnet"
|
|
||||||
- "traefik.http.services.alephzero-mainnet.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.alephzero-mainnet.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.alephzero-mainnet.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.alephzero-mainnet.rule=Host(`$DOMAIN`) && PathPrefix(`/alephzero-mainnet`)"
|
|
||||||
- "traefik.http.routers.alephzero-mainnet.middlewares=alephzero-mainnet-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arb-alephzero-mainnet:
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arb-alephzero-sepolia:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arb-alephzero-sepolia:/persistent'
|
|
||||||
- './arb/sepolia/alephzero/baseConfig.json:/baseConfig.json'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --conf.file=/baseConfig.json
|
|
||||||
- --persistent.ancient=/persistent/ancient
|
|
||||||
- --persistent.chain=/persistent/chain
|
|
||||||
- --persistent.global-config=/persistent/global-config
|
|
||||||
#- --execution.caching.archive=true
|
|
||||||
- --execution.caching.state-scheme=path
|
|
||||||
- --persistent.db-engine=pebble
|
|
||||||
- --execution.forwarding-target=https://rpc.alephzero-testnet.gelato.digital
|
|
||||||
- --node.feed.input.url=wss://feed.alephzero-testnet.gelato.digital
|
|
||||||
- --parent-chain.connection.url=${ALEPHZERO_SEPOLIA_PARENT_RPC}
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.port=8547
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --ws.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --node.data-availability.enable=true
|
|
||||||
- --node.data-availability.sequencer-inbox-address=0x16Ef70c48EF4BaaCfdaa4AfdD37F69332832a0bD
|
|
||||||
- --node.data-availability.parent-chain-node-url=${ALEPHZERO_SEPOLIA_PARENT_RPC}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ALEPHZERO_SEPOLIA_PARENT_BEACON_REST}
|
|
||||||
- --node.data-availability.rest-aggregator.enable=true
|
|
||||||
- --node.data-availability.rest-aggregator.urls=https://das.alephzero-testnet.gelato.digital
|
|
||||||
- --metrics
|
|
||||||
- --metrics-server.addr=0.0.0.0
|
|
||||||
- --metrics-server.port=6070
|
|
||||||
- --log-type=json
|
|
||||||
- --node.sequencer=false
|
|
||||||
- --execution.sequencer.enable=false
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --node.batch-poster.enable=false
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.alephzero-sepolia-stripprefix.stripprefix.prefixes=/alephzero-sepolia"
|
|
||||||
- "traefik.http.services.alephzero-sepolia.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.alephzero-sepolia.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.alephzero-sepolia.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.alephzero-sepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/alephzero-sepolia`)"
|
|
||||||
- "traefik.http.routers.alephzero-sepolia.middlewares=alephzero-sepolia-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arb-alephzero-sepolia:
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arb-alephzero-sepolia:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arb-alephzero-sepolia:/persistent'
|
|
||||||
- './arb/sepolia/alephzero/baseConfig.json:/baseConfig.json'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --conf.file=/baseConfig.json
|
|
||||||
- --persistent.ancient=/persistent/ancient
|
|
||||||
- --persistent.chain=/persistent/chain
|
|
||||||
- --persistent.global-config=/persistent/global-config
|
|
||||||
- --execution.caching.archive=true
|
|
||||||
- --execution.forwarding-target=https://rpc.alephzero-testnet.gelato.digital
|
|
||||||
- --node.feed.input.url=wss://feed.alephzero-testnet.gelato.digital
|
|
||||||
- --parent-chain.connection.url=${ALEPHZERO_SEPOLIA_PARENT_RPC}
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.port=8547
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --ws.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --node.data-availability.enable=true
|
|
||||||
- --node.data-availability.sequencer-inbox-address=0x16Ef70c48EF4BaaCfdaa4AfdD37F69332832a0bD
|
|
||||||
- --node.data-availability.parent-chain-node-url=${ALEPHZERO_SEPOLIA_PARENT_RPC}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ALEPHZERO_SEPOLIA_PARENT_BEACON_REST}
|
|
||||||
- --node.data-availability.rest-aggregator.enable=true
|
|
||||||
- --node.data-availability.rest-aggregator.urls=https://das.alephzero-testnet.gelato.digital
|
|
||||||
- --metrics
|
|
||||||
- --metrics-server.addr=0.0.0.0
|
|
||||||
- --metrics-server.port=6070
|
|
||||||
- --log-type=json
|
|
||||||
- --node.sequencer=false
|
|
||||||
- --execution.sequencer.enable=false
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --node.batch-poster.enable=false
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.alephzero-sepolia-stripprefix.stripprefix.prefixes=/alephzero-sepolia"
|
|
||||||
- "traefik.http.services.alephzero-sepolia.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.alephzero-sepolia.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.alephzero-sepolia.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.alephzero-sepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/alephzero-sepolia`)"
|
|
||||||
- "traefik.http.routers.alephzero-sepolia.middlewares=alephzero-sepolia-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arb-alephzero-sepolia:
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arb-connext-sepolia:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arb-connext-sepolia:/persistent'
|
|
||||||
- './arb/sepolia/connext/baseConfig.json:/baseConfig.json'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --conf.file=/baseConfig.json
|
|
||||||
- --persistent.ancient=/persistent/ancient
|
|
||||||
- --persistent.chain=/persistent/chain
|
|
||||||
- --persistent.global-config=/persistent/global-config
|
|
||||||
- --execution.caching.archive=true
|
|
||||||
- --execution.forwarding-target=https://rpc.connext-sepolia.gelato.digital
|
|
||||||
- --node.feed.input.url=wss://feed.connext-sepolia.gelato.digital
|
|
||||||
- --parent-chain.connection.url=${CONNEXT_SEPOLIA_PARENT_RPC}
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.port=8547
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --ws.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --node.data-availability.enable=true
|
|
||||||
- --node.data-availability.sequencer-inbox-address=0x7f5C1a58014E9DE69663CAc441bfa4C5d94b7E64
|
|
||||||
- --node.data-availability.parent-chain-node-url=${CONNEXT_SEPOLIA_PARENT_RPC}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${CONNEXT_SEPOLIA_PARENT_BEACON_REST}
|
|
||||||
- --node.data-availability.rest-aggregator.enable=true
|
|
||||||
- --node.data-availability.rest-aggregator.urls=https://das.connext-sepolia.gelato.digital
|
|
||||||
- --metrics
|
|
||||||
- --metrics-server.addr=0.0.0.0
|
|
||||||
- --metrics-server.port=6070
|
|
||||||
- --log-type=json
|
|
||||||
- --node.sequencer=false
|
|
||||||
- --execution.sequencer.enable=false
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --node.batch-poster.enable=false
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.connext-sepolia-stripprefix.stripprefix.prefixes=/connext-sepolia"
|
|
||||||
- "traefik.http.services.connext-sepolia.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.connext-sepolia.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.connext-sepolia.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.connext-sepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/connext-sepolia`)"
|
|
||||||
- "traefik.http.routers.connext-sepolia.middlewares=connext-sepolia-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arb-connext-sepolia:
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arb-everclear-mainnet:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arb-everclear-mainnet:/persistent'
|
|
||||||
- './arb/mainnet/everclear/baseConfig.json:/baseConfig.json'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --conf.file=/baseConfig.json
|
|
||||||
- --persistent.ancient=/persistent/ancient
|
|
||||||
- --persistent.chain=/persistent/chain
|
|
||||||
- --persistent.global-config=/persistent/global-config
|
|
||||||
- --execution.caching.archive=true
|
|
||||||
- --execution.forwarding-target=https://rpc.everclear.raas.gelato.cloud
|
|
||||||
- --node.feed.input.url=wss://feed.everclear.raas.gelato.cloud
|
|
||||||
- --parent-chain.connection.url=${EVERCLEAR_MAINNET_PARENT_RPC}
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.port=8547
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --ws.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --node.data-availability.enable=true
|
|
||||||
- --node.data-availability.sequencer-inbox-address=0x7f5C1a58014E9DE69663CAc441bfa4C5d94b7E64
|
|
||||||
- --node.data-availability.parent-chain-node-url=${EVERCLEAR_MAINNET_PARENT_RPC}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${EVERCLEAR_MAINNET_PARENT_BEACON_REST}
|
|
||||||
- --node.data-availability.rest-aggregator.enable=true
|
|
||||||
- --node.data-availability.rest-aggregator.urls=https://das.everclear.raas.gelato.cloud
|
|
||||||
- --metrics
|
|
||||||
- --metrics-server.addr=0.0.0.0
|
|
||||||
- --metrics-server.port=6070
|
|
||||||
- --log-type=json
|
|
||||||
- --node.sequencer=false
|
|
||||||
- --execution.sequencer.enable=false
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --node.batch-poster.enable=false
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.everclear-mainnet-stripprefix.stripprefix.prefixes=/everclear-mainnet"
|
|
||||||
- "traefik.http.services.everclear-mainnet.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.everclear-mainnet.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.everclear-mainnet.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.everclear-mainnet.rule=Host(`$DOMAIN`) && PathPrefix(`/everclear-mainnet`)"
|
|
||||||
- "traefik.http.routers.everclear-mainnet.middlewares=everclear-mainnet-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arb-everclear-mainnet:
|
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arb-opencampuscodex:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.0-f847be0}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arb-opencampuscodex:/persistent'
|
|
||||||
- './arb/arb-sepolia/opencampuscodex/baseConfig.json:/baseConfig.json'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --conf.file=/baseConfig.json
|
|
||||||
- --persistent.ancient=/persistent/ancient
|
|
||||||
- --persistent.chain=/persistent/chain
|
|
||||||
- --persistent.global-config=/persistent/global-config
|
|
||||||
- --execution.caching.archive=true
|
|
||||||
- --execution.forwarding-target=https://rpc.open-campus-codex.gelato.digital
|
|
||||||
- --node.feed.input.url=wss://feed.open-campus-codex.gelato.digital
|
|
||||||
- --parent-chain.connection.url=${OPENCAMPUSCODEX_PARENT_RPC}
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.port=8547
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --ws.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --node.data-availability.enable=true
|
|
||||||
- --node.data-availability.sequencer-inbox-address=0xe347C1223381b9Dcd6c0F61cf81c90175A7Bae77
|
|
||||||
- --node.data-availability.parent-chain-node-url=${OPENCAMPUSCODEX_PARENT_RPC}
|
|
||||||
- --node.data-availability.rest-aggregator.enable=true
|
|
||||||
- --node.data-availability.rest-aggregator.urls=https://das.open-campus-codex.gelato.digital
|
|
||||||
- --metrics
|
|
||||||
- --metrics-server.addr=0.0.0.0
|
|
||||||
- --metrics-server.port=6070
|
|
||||||
- --log-type=json
|
|
||||||
- --node.sequencer=false
|
|
||||||
- --execution.sequencer.enable=false
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --node.batch-poster.enable=false
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.opencampuscodex-stripprefix.stripprefix.prefixes=/opencampuscodex"
|
|
||||||
- "traefik.http.services.opencampuscodex.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.opencampuscodex.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.opencampuscodex.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.opencampuscodex.rule=Host(`$DOMAIN`) && PathPrefix(`/opencampuscodex`)"
|
|
||||||
- "traefik.http.routers.opencampuscodex.middlewares=opencampuscodex-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arb-opencampuscodex:
|
|
||||||
@@ -1,59 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arb-playblock:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arb-playblock:/persistent'
|
|
||||||
- './arb/nova/playblock/baseConfig.json:/baseConfig.json'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --conf.file=/baseConfig.json
|
|
||||||
- --persistent.ancient=/persistent/ancient
|
|
||||||
- --persistent.chain=/persistent/chain
|
|
||||||
- --persistent.global-config=/persistent/global-config
|
|
||||||
#- --execution.caching.archive=true
|
|
||||||
- --execution.caching.state-scheme=path
|
|
||||||
- --persistent.db-engine=pebble
|
|
||||||
- --execution.forwarding-target=https://rpc.playblock.io
|
|
||||||
- --node.feed.input.url=wss://feed.playblock.io
|
|
||||||
- --parent-chain.connection.url=${PLAYBLOCK_PARENT_RPC}
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.port=8547
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --ws.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --node.data-availability.enable=true
|
|
||||||
- --node.data-availability.sequencer-inbox-address=0xe347C1223381b9Dcd6c0F61cf81c90175A7Bae77
|
|
||||||
- --node.data-availability.parent-chain-node-url=${PLAYBLOCK_PARENT_RPC}
|
|
||||||
- --node.data-availability.rest-aggregator.enable=true
|
|
||||||
- --node.data-availability.rest-aggregator.urls=https://das.playblock.io
|
|
||||||
- --metrics
|
|
||||||
- --metrics-server.addr=0.0.0.0
|
|
||||||
- --metrics-server.port=6070
|
|
||||||
- --log-type=json
|
|
||||||
- --node.sequencer=false
|
|
||||||
- --execution.sequencer.enable=false
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --node.batch-poster.enable=false
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.playblock-stripprefix.stripprefix.prefixes=/playblock"
|
|
||||||
- "traefik.http.services.playblock.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.playblock.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.playblock.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.playblock.rule=Host(`$DOMAIN`) && PathPrefix(`/playblock`)"
|
|
||||||
- "traefik.http.routers.playblock.middlewares=playblock-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arb-playblock:
|
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arb-playblock:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arb-playblock:/persistent'
|
|
||||||
- './arb/nova/playblock/baseConfig.json:/baseConfig.json'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --conf.file=/baseConfig.json
|
|
||||||
- --persistent.ancient=/persistent/ancient
|
|
||||||
- --persistent.chain=/persistent/chain
|
|
||||||
- --persistent.global-config=/persistent/global-config
|
|
||||||
- --execution.caching.archive=true
|
|
||||||
- --execution.forwarding-target=https://rpc.playblock.io
|
|
||||||
- --node.feed.input.url=wss://feed.playblock.io
|
|
||||||
- --parent-chain.connection.url=${PLAYBLOCK_PARENT_RPC}
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.port=8547
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --ws.api=eth,net,web3,arb,txpool,debug
|
|
||||||
- --node.data-availability.enable=true
|
|
||||||
- --node.data-availability.sequencer-inbox-address=0xe347C1223381b9Dcd6c0F61cf81c90175A7Bae77
|
|
||||||
- --node.data-availability.parent-chain-node-url=${PLAYBLOCK_PARENT_RPC}
|
|
||||||
- --node.data-availability.rest-aggregator.enable=true
|
|
||||||
- --node.data-availability.rest-aggregator.urls=https://das.playblock.io
|
|
||||||
- --metrics
|
|
||||||
- --metrics-server.addr=0.0.0.0
|
|
||||||
- --metrics-server.port=6070
|
|
||||||
- --log-type=json
|
|
||||||
- --node.sequencer=false
|
|
||||||
- --execution.sequencer.enable=false
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --node.batch-poster.enable=false
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.playblock-stripprefix.stripprefix.prefixes=/playblock"
|
|
||||||
- "traefik.http.services.playblock.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.playblock.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.playblock.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.playblock.rule=Host(`$DOMAIN`) && PathPrefix(`/playblock`)"
|
|
||||||
- "traefik.http.routers.playblock.middlewares=playblock-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arb-playblock:
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
extra_gas_limit: 600000000
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-nitro-fullnode:
|
|
||||||
image: offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-fullnode_data:/arbitrum-node'
|
|
||||||
- './tmp/arbitrum-fullnode:/tmp'
|
|
||||||
expose:
|
|
||||||
- 8547
|
|
||||||
- 8548
|
|
||||||
command:
|
|
||||||
- --init.latest=pruned
|
|
||||||
- --chain.name=arb1
|
|
||||||
- --execution.caching.state-scheme=hash
|
|
||||||
- --persistent.db-engine=pebble
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --parent-chain.connection.url=${ARBITRUM_L1_URL}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ARBITRUM_L1_BEACON_URL}
|
|
||||||
- --chain.id=42161
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
- --execution.rpc.gas-cap=600000000
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-stripprefix.stripprefix.prefixes=/arbitrum-fullnode"
|
|
||||||
- "traefik.http.services.arbitrum.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-fullnode`)"
|
|
||||||
- "traefik.http.routers.arbitrum.middlewares=arbitrum-stripprefix"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-fullnode_data:
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
BASEPATH="$(dirname "$0")"
|
|
||||||
source $BASEPATH/.env
|
|
||||||
|
|
||||||
echo "running in $BASEPATH"
|
|
||||||
|
|
||||||
#IFS=':' read -ra parts <<< $COMPOSE_FILE
|
|
||||||
|
|
||||||
# Add the --init.prune option to the command list
|
|
||||||
sed -i '/command:/a \ \ - --init.prune=full' "$BASEPATH/arbitrum-fullnode.yml"
|
|
||||||
|
|
||||||
echo "$(cat $BASEPATH/arbitrum-fullnode.yml)"
|
|
||||||
|
|
||||||
docker compose --project-directory "$BASEPATH" up -d
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
# Execute SSH command and extract the answer
|
|
||||||
answer=$($BASEPATH/sync-status.sh arbitrum-fullnode)
|
|
||||||
|
|
||||||
# Check if answer is "online"
|
|
||||||
if [ "$answer" == "online" ]; then
|
|
||||||
break # Break the loop if answer is "online"
|
|
||||||
else
|
|
||||||
blocknumber=$($BASEPATH/blocknumber.sh arbitrum-fullnode)
|
|
||||||
echo "$(date) staus is $answer and blocknumber is $blocknumber"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Wait for 5 minutes before next iteration
|
|
||||||
sleep 5m
|
|
||||||
done
|
|
||||||
|
|
||||||
git -C $BASEPATH checkout arbitrum-fullnode.yml
|
|
||||||
@@ -1,41 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-nitro-fullnode:
|
|
||||||
image: offchainlabs/nitro-node:${NITRO_VERSION:-v3.0.0-e6f81cb}
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-fullnode_data:/arbitrum-node'
|
|
||||||
expose:
|
|
||||||
- 8547
|
|
||||||
- 8548
|
|
||||||
command:
|
|
||||||
- --init.prune=full
|
|
||||||
- --init.url=https://snapshot.arbitrum.foundation/arb1/nitro-pruned.tar
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --parent-chain.connection.url=${ARBITRUM_L1_URL}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ARBITRUM_L1_BEACON_URL}
|
|
||||||
- --chain.id=42161
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-stripprefix.stripprefix.prefixes=/arbitrum-fullnode"
|
|
||||||
- "traefik.http.services.arbitrum.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-fullnode`)"
|
|
||||||
- "traefik.http.routers.arbitrum.middlewares=arbitrum-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-fullnode_data:
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-goerli-fullnode:
|
|
||||||
image: 'offchainlabs/nitro-node:v2.0.14-2baa834'
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-goerli-fullnode:/arbitrum-node'
|
|
||||||
expose:
|
|
||||||
- 8547
|
|
||||||
- 8548
|
|
||||||
command:
|
|
||||||
- --init.url=https://snapshot.arbitrum.foundation/goerli/nitro-pruned.tar
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --l1.url=${ARBITRUM_GOERLI_L1_URL}
|
|
||||||
- --l2.chain-id=421613
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-goerli-stripprefix.stripprefix.prefixes=/arbitrum-goerli"
|
|
||||||
- "traefik.http.services.arbitrum-goerli.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum-goerli.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum-goerli.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum-goerli.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-goerli`)"
|
|
||||||
- "traefik.http.routers.arbitrum-goerli.middlewares=arbitrum-goerli-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-goerli-fullnode:
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-nova-fullnode:
|
|
||||||
image: offchainlabs/nitro-node:${NITRO_VERSION:-v3.3.2-9d70997}
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-nova-fullnode_data:/arbitrum-node'
|
|
||||||
- './tmp/arbitrum-nova-fullnode:/tmp'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --init.latest=pruned
|
|
||||||
- --chain.name=nova
|
|
||||||
- --node.data-availability.enable
|
|
||||||
- --execution.caching.state-scheme=path
|
|
||||||
- --persistent.db-engine=pebble
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --parent-chain.connection.url=${ARBITRUM_L1_URL}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ARBITRUM_L1_BEACON_URL}
|
|
||||||
- --chain.id=42170
|
|
||||||
- --execution.rpc.gas-cap=600000000
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-nova-stripprefix.stripprefix.prefixes=/arbitrum-nova-fullnode"
|
|
||||||
- "traefik.http.services.arbitrum-nova.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum-nova.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum-nova.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum-nova.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-nova-fullnode`)"
|
|
||||||
- "traefik.http.routers.arbitrum-nova.middlewares=arbitrum-nova-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-nova-fullnode_data:
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
extra_gas_limit: 600000000
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
methods:
|
|
||||||
enabled:
|
|
||||||
- name: txpool_content
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
COMPOSE_NAME="arbitrum-nova-fullnode"
|
|
||||||
|
|
||||||
BASEPATH="$(dirname "$0")"
|
|
||||||
source $BASEPATH/.env
|
|
||||||
|
|
||||||
echo "running in $BASEPATH"
|
|
||||||
|
|
||||||
#IFS=':' read -ra parts <<< $COMPOSE_FILE
|
|
||||||
|
|
||||||
# Add the --init.prune option to the command list
|
|
||||||
sed -i '/command:/a \ \ - --init.prune=full' "$BASEPATH/$COMPOSE_NAME.yml"
|
|
||||||
|
|
||||||
echo "$(cat $BASEPATH/$COMPOSE_NAME.yml)"
|
|
||||||
|
|
||||||
docker compose --project-directory "$BASEPATH" up -d
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
# Execute SSH command and extract the answer
|
|
||||||
answer=$($BASEPATH/sync-status.sh $COMPOSE_NAME)
|
|
||||||
|
|
||||||
# Check if answer is "online"
|
|
||||||
if [ "$answer" == "online" ]; then
|
|
||||||
break # Break the loop if answer is "online"
|
|
||||||
else
|
|
||||||
blocknumber=$($BASEPATH/blocknumber.sh $COMPOSE_NAME)
|
|
||||||
echo "$(date) staus is $answer and blocknumber is $blocknumber"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Wait for 5 minutes before next iteration
|
|
||||||
sleep 5m
|
|
||||||
done
|
|
||||||
|
|
||||||
git -C $BASEPATH checkout $COMPOSE_NAME.yml
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-nova-fullnode:
|
|
||||||
image: offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-nova-fullnode_data:/arbitrum-node'
|
|
||||||
- './tmp/arbitrum-nova-fullnode:/tmp'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --init.url=https://snapshot.arbitrum.foundation/nova/nitro-pruned.tar
|
|
||||||
- --node.data-availability.enable
|
|
||||||
- --execution.caching.state-scheme=hash
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --parent-chain.connection.url=${ARBITRUM_L1_URL}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ARBITRUM_L1_BEACON_URL}
|
|
||||||
- --chain.id=42170
|
|
||||||
- --execution.rpc.gas-cap=600000000
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-nova-stripprefix.stripprefix.prefixes=/arbitrum-nova-fullnode"
|
|
||||||
- "traefik.http.services.arbitrum-nova.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum-nova.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum-nova.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum-nova.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-nova-fullnode`)"
|
|
||||||
- "traefik.http.routers.arbitrum-nova.middlewares=arbitrum-nova-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-nova-fullnode_data:
|
|
||||||
@@ -9,25 +9,25 @@ services:
|
|||||||
expose:
|
expose:
|
||||||
- 8547
|
- 8547
|
||||||
- 8548
|
- 8548
|
||||||
entrypoint: ["/bin/bash", "/entrypoint.sh"]
|
entrypoint: ["/home/user/go/bin/arb-node"]
|
||||||
command: >
|
command:
|
||||||
--l1.url=http://eth.drpc.org
|
- --l1.url=http://eth.drpc.org
|
||||||
--core.checkpoint-gas-frequency=156250000
|
- --core.checkpoint-gas-frequency=156250000
|
||||||
--node.rpc.enable-l1-calls
|
- --node.rpc.enable-l1-calls
|
||||||
--node.cache.allow-slow-lookup
|
- --node.cache.allow-slow-lookup
|
||||||
--node.rpc.tracing.enable
|
- --node.rpc.tracing.enable
|
||||||
--node.rpc.addr=0.0.0.0
|
- --node.rpc.addr=0.0.0.0
|
||||||
--node.rpc.port=8547
|
- --node.rpc.port=8547
|
||||||
--node.rpc.tracing.namespace=trace
|
- --node.rpc.tracing.namespace=trace
|
||||||
--node.chain-id=42161
|
- --node.chain-id=42161
|
||||||
--node.ws.addr=0.0.0.0
|
- --node.ws.addr=0.0.0.0
|
||||||
--node.ws.port=8548
|
- --node.ws.port=8548
|
||||||
--metrics
|
- --metrics
|
||||||
--metrics-server.addr=0.0.0.0
|
- --metrics-server.addr=0.0.0.0
|
||||||
--metrics-server.port=7070
|
- --metrics-server.port=7070
|
||||||
--l2.disable-upstream
|
- --l2.disable-upstream
|
||||||
--persistent.chain=/data/datadir/
|
- --persistent.chain=/data/datadir/
|
||||||
--persistent.global-config=/data/
|
- --persistent.global-config=/data/
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
- "traefik.enable=true"
|
- "traefik.enable=true"
|
||||||
|
|||||||
@@ -1,50 +0,0 @@
|
|||||||
services:
|
|
||||||
arbitrum-one:
|
|
||||||
image: offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- '${ARBITRUM_ONE_NITRO_ARCHIVE_DATA:-arbitrum-one-nitro-archive}:/arbitrum-node'
|
|
||||||
- './tmp/arbitrum-archive:/tmp' # only used to initialize from scratch and the download is HUGE
|
|
||||||
expose:
|
|
||||||
- 8547
|
|
||||||
command: >
|
|
||||||
--init.latest=archive
|
|
||||||
--execution.caching.archive
|
|
||||||
--chain.name=arb1
|
|
||||||
--persistent.chain=/arbitrum-node/datadir
|
|
||||||
--persistent.global-config=/arbitrum-node/
|
|
||||||
--parent-chain.connection.url=${ARBITRUM_L1_ETHEREUM_MAINNET_EXECUTION_RPC}
|
|
||||||
--parent-chain.blob-client.beacon-url=${ARBITRUM_L1_ETHEREUM_MAINNET_BEACON_REST}
|
|
||||||
--chain.id=42161
|
|
||||||
--http.api=net,web3,eth,debug,arb
|
|
||||||
--http.corsdomain=*
|
|
||||||
--http.addr=0.0.0.0
|
|
||||||
--http.vhosts=*
|
|
||||||
--ws.port=8547
|
|
||||||
--ws.addr=0.0.0.0
|
|
||||||
--ws.origins=*
|
|
||||||
--execution.rpc.gas-cap=600000000
|
|
||||||
--execution.rpc.evm-timeout=30s
|
|
||||||
--http.server-timeouts.read-header-timeout=60s
|
|
||||||
--http.server-timeouts.read-timeout=60s
|
|
||||||
--http.server-timeouts.write-timeout=60s
|
|
||||||
--rpc.batch-request-limit=0
|
|
||||||
--rpc.max-batch-response-size=0
|
|
||||||
--execution.rpc.classic-redirect=${ARBITRUM_ONE_CLASSIC_RPC}
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-one-nitro-archive-stripprefix.stripprefix.prefixes=/arbitrum-archive"
|
|
||||||
- "traefik.http.services.arbitrum-one-nitro-archive.loadbalancer.server.port=8547"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.arbitrum-one-nitro-archive.entrypoints=websecure}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.arbitrum-one-nitro-archive.tls.certresolver=myresolver}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.arbitrum-one-nitro-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-archive`)}"
|
|
||||||
- "${NO_SSL:+traefik.http.routers.arbitrum-one-nitro-archive.rule=PathPrefix(`/arbitrum-archive`)}"
|
|
||||||
- "traefik.http.routers.arbitrum-one-nitro-archive.middlewares=arbitrum-one-nitro-archive-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-one-nitro-archive:
|
|
||||||
|
|
||||||
1
arbitrum-one-nitro-archive.yml
Symbolic link
1
arbitrum-one-nitro-archive.yml
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
arb/nitro/alephzero-mainnet-nitro-archive-leveldb-hash.yml
|
||||||
@@ -1,41 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-sepolia-archive:
|
|
||||||
image: 'offchainlabs/nitro-node:v3.1.2-309340a'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-sepolia-archive_data:/arbitrum-node'
|
|
||||||
- './tmp/arbitrum-sepolia-archive:/tmp'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --init.url=https://snapshot.arbitrum.foundation/sepolia/nitro-archive.tar
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --parent-chain.connection.url=${ARBITRUM_SEPOLIA_URL}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ARBITRUM_SEPOLIA_BEACON_URL}
|
|
||||||
- --chain.id=421614
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-sepolia-stripprefix.stripprefix.prefixes=/arbitrum-sepolia-archive"
|
|
||||||
- "traefik.http.services.arbitrum-sepolia.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-sepolia-archive`)"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.middlewares=arbitrum-sepolia-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-sepolia-archive_data:
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-sepolia-fullnode:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.0-f847be0}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-sepolia-fullnode_data:/arbitrum-node'
|
|
||||||
- './tmp/arbitrum-sepolia-fullnode:/tmp'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --init.latest=pruned
|
|
||||||
- --chain.name=sepolia-rollup
|
|
||||||
- --chain.id=421614
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --parent-chain.connection.url=${ARBITRUM_SEPOLIA_URL}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ARBITRUM_SEPOLIA_BEACON_URL}
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-sepolia-stripprefix.stripprefix.prefixes=/arbitrum-sepolia-fullnode"
|
|
||||||
- "traefik.http.services.arbitrum-sepolia.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-sepolia-fullnode`)"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.middlewares=arbitrum-sepolia-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-sepolia-fullnode_data:
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-sepolia-fullnode:
|
|
||||||
image: 'offchainlabs/nitro-node:v3.0.0-e6f81cb'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-sepolia-fullnode_data:/arbitrum-node'
|
|
||||||
- './tmp/arbitrum-sepolia-fullnode:/tmp'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --init.prune=full
|
|
||||||
- --init.url=https://snapshot.arbitrum.foundation/sepolia/nitro-pruned.tar
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --parent-chain.connection.url=${ARBITRUM_SEPOLIA_URL}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ARBITRUM_SEPOLIA_BEACON_URL}
|
|
||||||
- --chain.id=421614
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-sepolia-stripprefix.stripprefix.prefixes=/arbitrum-sepolia-fullnode"
|
|
||||||
- "traefik.http.services.arbitrum-sepolia.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-sepolia-fullnode`)"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.middlewares=arbitrum-sepolia-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-sepolia-fullnode_data:
|
|
||||||
@@ -1,41 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
arbitrum-sepolia-fullnode:
|
|
||||||
image: 'offchainlabs/nitro-node:${NITRO_VERSION:-v3.2.1-d81324d}'
|
|
||||||
stop_grace_period: 3m
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- 'arbitrum-sepolia-fullnode_data:/arbitrum-node'
|
|
||||||
- './tmp/arbitrum-sepolia-fullnode:/tmp'
|
|
||||||
expose:
|
|
||||||
- 8547 # http + ws
|
|
||||||
command:
|
|
||||||
- --init.url=https://snapshot.arbitrum.foundation/sepolia/nitro-pruned.tar
|
|
||||||
- --node.staker.enable=false
|
|
||||||
- --persistent.chain=/arbitrum-node/data/
|
|
||||||
- --persistent.global-config=/arbitrum-node/
|
|
||||||
- --parent-chain.connection.url=${ARBITRUM_SEPOLIA_URL}
|
|
||||||
- --parent-chain.blob-client.beacon-url=${ARBITRUM_SEPOLIA_BEACON_URL}
|
|
||||||
- --chain.id=421614
|
|
||||||
- --http.api=net,web3,eth,debug
|
|
||||||
- --http.corsdomain=*
|
|
||||||
- --http.addr=0.0.0.0
|
|
||||||
- --http.vhosts=*
|
|
||||||
- --ws.port=8547
|
|
||||||
- --ws.addr=0.0.0.0
|
|
||||||
- --ws.origins=*
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.arbitrum-sepolia-stripprefix.stripprefix.prefixes=/arbitrum-sepolia-fullnode"
|
|
||||||
- "traefik.http.services.arbitrum-sepolia.loadbalancer.server.port=8547"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/arbitrum-sepolia-fullnode`)"
|
|
||||||
- "traefik.http.routers.arbitrum-sepolia.middlewares=arbitrum-sepolia-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
arbitrum-sepolia-fullnode_data:
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
#if [ -f /root/.arbitrum/mainnet/INITIALIZED ]; then
|
|
||||||
# echo "datadir is already initialized"
|
|
||||||
#else
|
|
||||||
# echo "lemme download the database quickly"
|
|
||||||
# rm -rf /root/.arbitrum/mainnet/db
|
|
||||||
# curl https://snapshot.arbitrum.io/arb1/classic-archive.tar | tar -xv -C /root/.arbitrum/mainnet/ && touch /root/.arbitrum/mainnet/INITIALIZED
|
|
||||||
#fi
|
|
||||||
|
|
||||||
#echo "LFG!!!"
|
|
||||||
|
|
||||||
exec /home/user/go/bin/arb-node $@
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
extra_gas_limit: 600000000
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
methods:
|
|
||||||
enabled:
|
|
||||||
- name: txpool_content
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
avalanche-fuji-archive-client:
|
avalanche-fuji-archive-client:
|
||||||
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalancheg}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji}
|
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji}
|
||||||
user: root
|
user: root
|
||||||
ulimits:
|
ulimits:
|
||||||
nofile: 1048576 # Max open files (for RPC/WS connections)
|
nofile: 1048576 # Max open files (for RPC/WS connections)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
avalanche-fuji-client:
|
avalanche-fuji-client:
|
||||||
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalancheg}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji}
|
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_FUJI_GO_VERSION:-v1.13.0-fuji}
|
||||||
user: root
|
user: root
|
||||||
ulimits:
|
ulimits:
|
||||||
nofile: 1048576 # Max open files (for RPC/WS connections)
|
nofile: 1048576 # Max open files (for RPC/WS connections)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
avalanche-mainnet-archive-client:
|
avalanche-mainnet-archive-client:
|
||||||
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalancheg}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0}
|
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0}
|
||||||
user: root
|
user: root
|
||||||
ulimits:
|
ulimits:
|
||||||
nofile: 1048576 # Max open files (for RPC/WS connections)
|
nofile: 1048576 # Max open files (for RPC/WS connections)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
services:
|
services:
|
||||||
avalanche-mainnet-client:
|
avalanche-mainnet-client:
|
||||||
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalancheg}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0}
|
image: ${AVALANCHE_GO_IMAGE:-avaplatform/avalanchego}:${AVALANCHE_MAINNET_GO_VERSION:-v1.13.0}
|
||||||
user: root
|
user: root
|
||||||
ulimits:
|
ulimits:
|
||||||
nofile: 1048576 # Max open files (for RPC/WS connections)
|
nofile: 1048576 # Max open files (for RPC/WS connections)
|
||||||
|
|||||||
@@ -1,80 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
base-archive: # this is Optimism's geth client
|
|
||||||
build: ./base
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC / Websocket
|
|
||||||
- 48554 # P2P TCP (currently unused)
|
|
||||||
- 48554/udp # P2P UDP (currently unused)
|
|
||||||
- 6060 # metrics
|
|
||||||
ports:
|
|
||||||
- "48554:48554"
|
|
||||||
- "48554:48554/udp"
|
|
||||||
command: [ "sh", "./geth-entrypoint" ]
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
volumes:
|
|
||||||
- base-archive:/data
|
|
||||||
environment:
|
|
||||||
- "OP_GETH_GENESIS_FILE_PATH=mainnet/genesis-l2.json"
|
|
||||||
- "OP_GETH_SEQUENCER_HTTP=https://mainnet-sequencer.base.org"
|
|
||||||
- "P2P_PORT=48554"
|
|
||||||
- "WS_PORT=8545"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH_RAW=688f5d737bad920bdfb2fc2f488d6b6209eebda1dae949a8de91398d932c517a"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/tmp/engine-auth-jwt"
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.base-archive-stripprefix.stripprefix.prefixes=/base-archive"
|
|
||||||
- "traefik.http.services.base-archive.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.base-archive.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.base-archive.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.base-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/base-archive`)"
|
|
||||||
- "traefik.http.routers.base-archive.middlewares=base-archive-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
|
|
||||||
base-node:
|
|
||||||
build: ./base
|
|
||||||
depends_on:
|
|
||||||
- base-archive
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC
|
|
||||||
- 63839 # P2P TCP
|
|
||||||
- 63839/udp # P2P UDP
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
ports:
|
|
||||||
- "63839:63839"
|
|
||||||
- "63839:63839/udp"
|
|
||||||
command: [ "sh", "./op-node-entrypoint" ]
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
environment:
|
|
||||||
- "OP_NODE_NETWORK=base-mainnet"
|
|
||||||
- "OP_NODE_L1_ETH_RPC=${BASE_ETHEREUM_ENDPOINT}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH_RAW=688f5d737bad920bdfb2fc2f488d6b6209eebda1dae949a8de91398d932c517a"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/tmp/engine-auth-jwt"
|
|
||||||
- "OP_NODE_L2_ENGINE_RPC=http://base-archive:8551"
|
|
||||||
- "OP_NODE_LOG_LEVEL=info"
|
|
||||||
- "OP_NODE_METRICS_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_METRICS_ENABLED=true"
|
|
||||||
- "OP_NODE_METRICS_PORT=7300"
|
|
||||||
- "OP_NODE_P2P_AGENT=base"
|
|
||||||
- "OP_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG"
|
|
||||||
- "OP_NODE_P2P_LISTEN_IP=0.0.0.0"
|
|
||||||
- "OP_NODE_P2P_LISTEN_TCP_PORT=63839"
|
|
||||||
- "OP_NODE_P2P_LISTEN_UDP_PORT=63839"
|
|
||||||
- "OP_NODE_ROLLUP_CONFIG=mainnet/rollup.json"
|
|
||||||
- "OP_NODE_RPC_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_RPC_PORT=8545"
|
|
||||||
- "OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log"
|
|
||||||
- "OP_NODE_VERIFIER_L1_CONFS=4"
|
|
||||||
- "OP_NODE_L1_RPC_KIND=${BASE_ETHEREUM_ENDPOINT_KIND:-basic}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=${BASE_ETHEREUM_ENDPOINT_TRUST:-false}"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
base-archive:
|
|
||||||
@@ -1,107 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
base-fullnode: # this is Optimism's geth client
|
|
||||||
build:
|
|
||||||
context: ./op
|
|
||||||
args:
|
|
||||||
OP_GETH_VERSION: v1.101408.0
|
|
||||||
OP_NODE_VERSION: v1.9.1
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC / Websocket
|
|
||||||
- 8480 # P2P TCP (currently unused)
|
|
||||||
- 8480/udp # P2P UDP (currently unused)
|
|
||||||
- 6060 # metrics
|
|
||||||
- 855
|
|
||||||
ports:
|
|
||||||
- "8480:8480"
|
|
||||||
- "8480:8480/udp"
|
|
||||||
#command: [ "sh", "./geth-entrypoint" ]
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 3m
|
|
||||||
entrypoint: ./geth
|
|
||||||
command: --datadir=/data --verbosity=3 --http --http.corsdomain=* --http.vhosts=* --http.addr=0.0.0.0 --http.port=8545 --http.api=web3,debug,eth,net,engine --authrpc.addr=0.0.0.0 --authrpc.port=8551 --authrpc.vhosts=* --authrpc.jwtsecret=/jwtsecret --ws --ws.addr=0.0.0.0 --ws.port=8545 --ws.origins=* --ws.api=debug,eth,net,engine --metrics --metrics.addr=0.0.0.0 --metrics.port=6060 --syncmode=snap --gcmode=full --state.scheme=path --db.engine=pebble --discovery.port=8480 --maxpeers=100 --networkid=8453 --op-network=base-mainnet --rollup.halt=major --rollup.sequencerhttp=https://mainnet-sequencer.base.org --port=8480 --nat=extip:${IP}
|
|
||||||
volumes:
|
|
||||||
- base-fullnode:/data
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
environment:
|
|
||||||
#- "OP_GETH_GENESIS_FILE_PATH=mainnet/genesis-l2.json"
|
|
||||||
- "OP_GETH_SEQUENCER_HTTP=https://mainnet-sequencer.base.org"
|
|
||||||
- "OP_GETH_GCMODE=full"
|
|
||||||
- "OP_GETH_SYNCMODE=snap"
|
|
||||||
- "GETH_SYNCMODE=snap"
|
|
||||||
- "GETH_BOOTNODES=enode://87a32fd13bd596b2ffca97020e31aef4ddcc1bbd4b95bb633d16c1329f654f34049ed240a36b449fda5e5225d70fe40bc667f53c304b71f8e68fc9d448690b51@3.231.138.188:30301,enode://ca21ea8f176adb2e229ce2d700830c844af0ea941a1d8152a9513b966fe525e809c3a6c73a2c18a12b74ed6ec4380edf91662778fe0b79f6a591236e49e176f9@184.72.129.189:30301,enode://acf4507a211ba7c1e52cdf4eef62cdc3c32e7c9c47998954f7ba024026f9a6b2150cd3f0b734d9c78e507ab70d59ba61dfe5c45e1078c7ad0775fb251d7735a2@3.220.145.177:30301,enode://8a5a5006159bf079d06a04e5eceab2a1ce6e0f721875b2a9c96905336219dbe14203d38f70f3754686a6324f786c2f9852d8c0dd3adac2d080f4db35efc678c5@3.231.11.52:30301,enode://cdadbe835308ad3557f9a1de8db411da1a260a98f8421d62da90e71da66e55e98aaa8e90aa7ce01b408a54e4bd2253d701218081ded3dbe5efbbc7b41d7cef79@54.198.153.150:30301"
|
|
||||||
- "OP_GETH_STATE_SCHEME=path"
|
|
||||||
- "GETH_STATE_SCHEME=path"
|
|
||||||
- "OP_GETH_DB_ENGINE=pebble"
|
|
||||||
- "OP_GETH_P2P_PORT=8480"
|
|
||||||
- "GETH_DISCOVERY_PORT=8480"
|
|
||||||
- "GETH_DB_ENGINE=pebble"
|
|
||||||
- "P2P_PORT=8480"
|
|
||||||
- "WS_PORT=8545"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/tmp/engine-auth-jwt"
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.base-stripprefix.stripprefix.prefixes=/base"
|
|
||||||
- "traefik.http.services.base.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.base.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.base.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.base.rule=Host(`$DOMAIN`) && PathPrefix(`/base`)"
|
|
||||||
- "traefik.http.routers.base.middlewares=base-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
|
|
||||||
base-fullnode-node:
|
|
||||||
build:
|
|
||||||
context: ./op
|
|
||||||
args:
|
|
||||||
OP_GETH_VERSION: v1.101408.0
|
|
||||||
OP_NODE_VERSION: v1.9.1
|
|
||||||
depends_on:
|
|
||||||
- base-fullnode
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC
|
|
||||||
- 32521 # P2P TCP
|
|
||||||
- 32521/udp # P2P UDP
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
ports:
|
|
||||||
- "32521:32521"
|
|
||||||
- "32521:32521/udp"
|
|
||||||
#command: [ "sh", "./op-node-entrypoint" ]
|
|
||||||
entrypoint: ./op-node
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
environment:
|
|
||||||
- "OP_NODE_NETWORK=base-mainnet"
|
|
||||||
- "OP_NODE_SYNCMODE=execution-layer"
|
|
||||||
- "OP_NODE_L1_ETH_RPC=${BASE_ETHEREUM_ENDPOINT}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/jwtsecret"
|
|
||||||
- "OP_NODE_L2_ENGINE_RPC=http://base-fullnode:8551"
|
|
||||||
- "OP_NODE_LOG_LEVEL=info"
|
|
||||||
- "OP_NODE_METRICS_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_METRICS_ENABLED=true"
|
|
||||||
- "OP_NODE_METRICS_PORT=7300"
|
|
||||||
- "OP_NODE_P2P_AGENT=base"
|
|
||||||
- "OP_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG"
|
|
||||||
- "OP_NODE_P2P_LISTEN_IP=0.0.0.0"
|
|
||||||
- "OP_NODE_P2P_LISTEN_TCP_PORT=32521"
|
|
||||||
- "OP_NODE_P2P_LISTEN_UDP_PORT=32521"
|
|
||||||
- "OP_NODE_ROLLUP_CONFIG=mainnet/rollup.json"
|
|
||||||
- "OP_NODE_RPC_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_RPC_PORT=8545"
|
|
||||||
- "OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log"
|
|
||||||
- "OP_NODE_VERIFIER_L1_CONFS=4"
|
|
||||||
- "OP_NODE_L1_RPC_KIND=${BASE_ETHEREUM_ENDPOINT_KIND:-basic}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=${BASE_ETHEREUM_ENDPOINT_TRUST:-false}"
|
|
||||||
- "OP_NODE_L1_BEACON=${BASE_ETHEREUM_ENDPOINT_BEACON}"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
base-fullnode:
|
|
||||||
@@ -1,89 +0,0 @@
|
|||||||
services:
|
|
||||||
|
|
||||||
base-erigon:
|
|
||||||
image: testinprod/op-erigon:${OP_ERIGON_VERSION:-v2.61.1-0.8.3}
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 5m
|
|
||||||
user: root
|
|
||||||
expose:
|
|
||||||
- "9090"
|
|
||||||
- "8545"
|
|
||||||
- "8551"
|
|
||||||
command: >
|
|
||||||
--private.api.addr=localhost:9090
|
|
||||||
--http.api=eth,debug,net,trace,web3,erigon
|
|
||||||
--http.addr=0.0.0.0
|
|
||||||
--http.port=8545
|
|
||||||
--http.corsdomain="*"
|
|
||||||
--http.vhosts="*"
|
|
||||||
--authrpc.addr=0.0.0.0
|
|
||||||
--authrpc.port=8551
|
|
||||||
--authrpc.vhosts="*"
|
|
||||||
--authrpc.jwtsecret=/jwtsecret
|
|
||||||
--rollup.sequencerhttp="https://mainnet-sequencer.base.org"
|
|
||||||
--chain=base-mainnet
|
|
||||||
--ws
|
|
||||||
--nodiscover
|
|
||||||
volumes:
|
|
||||||
- ${BASE_MAINNET_OP_ERIGON_ARCHIVE_TRACE_DATA:-base-mainnet-op-erigon-archive-trace}:/root/.local/share/erigon
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.base-mainnet-op-erigon-archive-trace-stripprefix.stripprefix.prefixes=/base-erigon"
|
|
||||||
- "traefik.http.services.base-mainnet-op-erigon-archive-trace.loadbalancer.server.port=8545"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.base-mainnet-op-erigon-archive-trace.entrypoints=websecure}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.base-mainnet-op-erigon-archive-trace.tls.certresolver=myresolver}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.base-mainnet-op-erigon-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/base-erigon`)}"
|
|
||||||
- "${NO_SSL:+traefik.http.routers.base-mainnet-op-erigon-archive-trace.rule=PathPrefix(`/base-erigon`)}"
|
|
||||||
- "traefik.http.routers.base-mainnet-op-erigon-archive-trace.middlewares=base-mainnet-op-erigon-archive-trace-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
base-erigon-node:
|
|
||||||
build:
|
|
||||||
context: ./op
|
|
||||||
depends_on:
|
|
||||||
- base-erigon
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC
|
|
||||||
- 29899 # P2P TCP
|
|
||||||
- 29899/udp # P2P UDP
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
ports:
|
|
||||||
- "29899:29899"
|
|
||||||
- "29899:29899/udp"
|
|
||||||
entrypoint: ./op-node
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
environment:
|
|
||||||
- "OP_NODE_NETWORK=base-mainnet"
|
|
||||||
#- "OP_NODE_SYNCMODE=execution-layer"
|
|
||||||
- "OP_NODE_L1_ETH_RPC=${BASE_L1_ETHEREUM_MAINNET_EXECUTION_RPC}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/jwtsecret"
|
|
||||||
- "OP_NODE_L2_ENGINE_RPC=http://base-erigon:8551"
|
|
||||||
- "OP_NODE_LOG_LEVEL=info"
|
|
||||||
- "OP_NODE_METRICS_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_METRICS_ENABLED=true"
|
|
||||||
- "OP_NODE_METRICS_PORT=7300"
|
|
||||||
- "OP_NODE_P2P_AGENT=optimism"
|
|
||||||
- "OP_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG"
|
|
||||||
- "OP_NODE_P2P_LISTEN_IP=0.0.0.0"
|
|
||||||
- "OP_NODE_P2P_LISTEN_TCP_PORT=29899"
|
|
||||||
- "OP_NODE_P2P_LISTEN_UDP_PORT=29899"
|
|
||||||
- "OP_NODE_RPC_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_RPC_PORT=8545"
|
|
||||||
- "OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log"
|
|
||||||
- "OP_NODE_VERIFIER_L1_CONFS=4"
|
|
||||||
- "OP_NODE_L1_RPC_KIND=${BASE_L1_ETHEREUM_MAINNET_EXECUTION_KIND:-basic}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=${BASE_L1_ETHEREUM_MAINNET_EXECUTION_TRUST:-false}"
|
|
||||||
- "OP_NODE_L1_BEACON=${BASE_L1_ETHEREUM_MAINNET_BEACON_REST}"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
base-mainnet-op-erigon-archive-trace:
|
|
||||||
1
base-mainnet-op-erigon-archive-trace.yml
Symbolic link
1
base-mainnet-op-erigon-archive-trace.yml
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
op/erigon/base-mainnet-op-erigon-archive-trace.yml
|
||||||
@@ -1,103 +0,0 @@
|
|||||||
services:
|
|
||||||
base-reth:
|
|
||||||
image: ghcr.io/paradigmxyz/op-reth:${OP_RETH_VERSION:-v1.3.1}
|
|
||||||
expose:
|
|
||||||
- 9551
|
|
||||||
- 8545 # RPC / Websocket
|
|
||||||
- 50138 # P2P TCP (currently unused)
|
|
||||||
- 50138/udp # P2P UDP (currently unused)
|
|
||||||
- 6060 # metrics
|
|
||||||
ports:
|
|
||||||
- "50138:50138"
|
|
||||||
- "50138:50138/udp"
|
|
||||||
restart: unless-stopped
|
|
||||||
user: root
|
|
||||||
stop_grace_period: 3m
|
|
||||||
command: >
|
|
||||||
node
|
|
||||||
--chain base
|
|
||||||
--port 50138
|
|
||||||
--discovery.port 50138
|
|
||||||
--rollup.sequencer-http https://mainnet-sequencer.base.org
|
|
||||||
--http
|
|
||||||
--ws
|
|
||||||
--authrpc.addr 0.0.0.0
|
|
||||||
--authrpc.port 9551
|
|
||||||
--authrpc.jwtsecret /jwtsecret
|
|
||||||
--http.addr 0.0.0.0
|
|
||||||
--http.port 8545
|
|
||||||
--ws.addr 0.0.0.0
|
|
||||||
--ws.port 8545
|
|
||||||
--ws.origins '*'
|
|
||||||
--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
|
|
||||||
--nat extip:$IP
|
|
||||||
volumes:
|
|
||||||
- ${BASE_MAINNET_OP_RETH_ARCHIVE_TRACE_DATA:-base-mainnet-op-reth-archive-trace}:/root/.local/share/reth/base
|
|
||||||
- /slowdisk:/slowdisk
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.base-mainnet-op-reth-archive-trace-stripprefix.stripprefix.prefixes=/base-reth"
|
|
||||||
- "traefik.http.services.base-mainnet-op-reth-archive-trace.loadbalancer.server.port=8545"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.base-mainnet-op-reth-archive-trace.entrypoints=websecure}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.base-mainnet-op-reth-archive-trace.tls.certresolver=myresolver}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.base-mainnet-op-reth-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/base-reth`)}"
|
|
||||||
- "${NO_SSL:+traefik.http.routers.base-mainnet-op-reth-archive-trace.rule=PathPrefix(`/base-reth`)}"
|
|
||||||
- "traefik.http.routers.base-mainnet-op-reth-archive-trace.middlewares=base-mainnet-op-reth-archive-trace-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
|
|
||||||
base-reth-node:
|
|
||||||
build:
|
|
||||||
context: ./op
|
|
||||||
depends_on:
|
|
||||||
- base-reth
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC
|
|
||||||
- 36755 # P2P TCP
|
|
||||||
- 36755/udp # P2P UDP
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
ports:
|
|
||||||
- "36755:36755"
|
|
||||||
- "36755:36755/udp"
|
|
||||||
entrypoint: ./op-node
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
environment:
|
|
||||||
- "OP_NODE_NETWORK=base-mainnet"
|
|
||||||
- "OP_NODE_SYNCMODE=execution-layer"
|
|
||||||
- "OP_NODE_L1_ETH_RPC=${BASE_L1_ETHEREUM_MAINNET_EXECUTION_RPC}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/jwtsecret"
|
|
||||||
- "OP_NODE_L2_ENGINE_RPC=http://base-reth:9551"
|
|
||||||
- "OP_NODE_LOG_LEVEL=info"
|
|
||||||
- "OP_NODE_METRICS_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_METRICS_ENABLED=true"
|
|
||||||
- "OP_NODE_METRICS_PORT=7300"
|
|
||||||
- "OP_NODE_P2P_AGENT=base"
|
|
||||||
- "OP_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG"
|
|
||||||
- "OP_NODE_P2P_LISTEN_IP=0.0.0.0"
|
|
||||||
- "OP_NODE_P2P_LISTEN_TCP_PORT=36755"
|
|
||||||
- "OP_NODE_P2P_LISTEN_UDP_PORT=36755"
|
|
||||||
- "OP_NODE_ROLLUP_CONFIG=mainnet/rollup.json"
|
|
||||||
- "OP_NODE_RPC_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_RPC_PORT=8545"
|
|
||||||
- "OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log"
|
|
||||||
- "OP_NODE_VERIFIER_L1_CONFS=4"
|
|
||||||
- "OP_NODE_L1_RPC_KIND=${BASE_L1_ETHEREUM_MAINNET_EXECUTION_KIND:-basic}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=${BASE_L1_ETHEREUM_MAINNET_EXECUTION_TRUST:-false}"
|
|
||||||
- "OP_NODE_L1_BEACON=${BASE_L1_ETHEREUM_MAINNET_BEACON_REST}"
|
|
||||||
- "OP_NODE_L2_SKIP_SYNC_START_CHECK=true"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
base-mainnet-op-reth-archive-trace:
|
|
||||||
1
base-mainnet-op-reth-archive-trace.yml
Symbolic link
1
base-mainnet-op-reth-archive-trace.yml
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
op/reth/base-mainnet-op-reth-archive-trace.yml
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
methods:
|
|
||||||
enabled:
|
|
||||||
- name: txpool_content
|
|
||||||
disabled:
|
|
||||||
- name: eth_maxPriorityFeePerGas
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
@@ -1,89 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
base-fullnode: # this is Optimism's geth client
|
|
||||||
image: ghcr.io/paradigmxyz/op-reth:${RETH_VERSION:-v1.3.2}
|
|
||||||
expose:
|
|
||||||
- 9551
|
|
||||||
- 8545 # RPC / Websocket
|
|
||||||
- 27532 # P2P TCP (currently unused)
|
|
||||||
- 27532/udp # P2P UDP (currently unused)
|
|
||||||
- 6060 # metrics
|
|
||||||
- 855
|
|
||||||
ports:
|
|
||||||
- "27532:27532"
|
|
||||||
- "27532:27532/udp"
|
|
||||||
#command: [ "sh", "./geth-entrypoint" ]
|
|
||||||
restart: always
|
|
||||||
user: root
|
|
||||||
stop_grace_period: 3m
|
|
||||||
command: node --full --chain base --port 27532 --discovery.port 27532 --rollup.sequencer-http https://mainnet-sequencer.base.org --http --ws --authrpc.addr 0.0.0.0 --authrpc.port 9551 --authrpc.jwtsecret /jwtsecret --http.addr 0.0.0.0 --http.port 8545 --ws.addr 0.0.0.0 --ws.port 8545 --ws.origins '*' --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 --nat extip:$IP
|
|
||||||
volumes:
|
|
||||||
- base-reth-fullnode:/root/.local/share/reth/base
|
|
||||||
- /slowdisk:/slowdisk
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.base-fullnode-stripprefix.stripprefix.prefixes=/base-fullnode"
|
|
||||||
- "traefik.http.services.base-fullnode.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.base-fullnode.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.base-fullnode.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.base-fullnode.rule=Host(`$DOMAIN`) && PathPrefix(`/base-fullnode`)"
|
|
||||||
- "traefik.http.routers.base-fullnode.middlewares=base-fullnode-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
|
|
||||||
base-fullnode-node:
|
|
||||||
build:
|
|
||||||
context: ./op
|
|
||||||
# args:
|
|
||||||
# OP_GETH_VERSION: v1.101408.0
|
|
||||||
# OP_NODE_VERSION: v1.9.1
|
|
||||||
depends_on:
|
|
||||||
- base-fullnode
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC
|
|
||||||
- 15729 # P2P TCP
|
|
||||||
- 15729/udp # P2P UDP
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
ports:
|
|
||||||
- "15729:15729"
|
|
||||||
- "15729:15729/udp"
|
|
||||||
#command: [ "sh", "./op-node-entrypoint" ]
|
|
||||||
entrypoint: ./op-node
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
environment:
|
|
||||||
- "OP_NODE_NETWORK=base-mainnet"
|
|
||||||
- "OP_NODE_SYNCMODE=execution-layer"
|
|
||||||
- "OP_NODE_L1_ETH_RPC=${BASE_ETHEREUM_ENDPOINT}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/jwtsecret"
|
|
||||||
- "OP_NODE_L2_ENGINE_RPC=http://base-fullnode:9551"
|
|
||||||
- "OP_NODE_LOG_LEVEL=info"
|
|
||||||
- "OP_NODE_METRICS_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_METRICS_ENABLED=true"
|
|
||||||
- "OP_NODE_METRICS_PORT=7300"
|
|
||||||
- "OP_NODE_P2P_AGENT=base"
|
|
||||||
- "OP_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG"
|
|
||||||
- "OP_NODE_P2P_LISTEN_IP=0.0.0.0"
|
|
||||||
- "OP_NODE_P2P_LISTEN_TCP_PORT=15729"
|
|
||||||
- "OP_NODE_P2P_LISTEN_UDP_PORT=15729"
|
|
||||||
- "OP_NODE_ROLLUP_CONFIG=mainnet/rollup.json"
|
|
||||||
- "OP_NODE_RPC_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_RPC_PORT=8545"
|
|
||||||
- "OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log"
|
|
||||||
- "OP_NODE_VERIFIER_L1_CONFS=4"
|
|
||||||
- "OP_NODE_L1_RPC_KIND=${BASE_ETHEREUM_ENDPOINT_KIND:-basic}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=${BASE_ETHEREUM_ENDPOINT_TRUST:-false}"
|
|
||||||
- "OP_NODE_L1_BEACON=${BASE_ETHEREUM_ENDPOINT_BEACON}"
|
|
||||||
- "OP_NODE_L2_SKIP_SYNC_START_CHECK=true"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
base-reth-fullnode:
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
methods:
|
|
||||||
enabled:
|
|
||||||
- name: txpool_content
|
|
||||||
disabled:
|
|
||||||
- name: eth_maxPriorityFeePerGas
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
@@ -1,85 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
base-archive: # this is Optimism's geth client
|
|
||||||
image: ghcr.io/paradigmxyz/op-reth:${RETH_VERSION:-v1.1.5}
|
|
||||||
expose:
|
|
||||||
- 9551
|
|
||||||
- 8545 # RPC / Websocket
|
|
||||||
- 23238 # P2P TCP (currently unused)
|
|
||||||
- 23238/udp # P2P UDP (currently unused)
|
|
||||||
- 6060 # metrics
|
|
||||||
- 855
|
|
||||||
ports:
|
|
||||||
- "23238:23238"
|
|
||||||
- "23238:23238/udp"
|
|
||||||
#command: [ "sh", "./geth-entrypoint" ]
|
|
||||||
restart: always
|
|
||||||
user: root
|
|
||||||
stop_grace_period: 3m
|
|
||||||
command: node --chain base --port 23238 --discovery.port 23238 --rollup.sequencer-http https://mainnet-sequencer.base.org --http --ws --authrpc.addr 0.0.0.0 --authrpc.port 9551 --authrpc.jwtsecret /jwtsecret --http.addr 0.0.0.0 --http.port 8545 --ws.addr 0.0.0.0 --ws.port 8545 --ws.origins '*' --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
|
|
||||||
volumes:
|
|
||||||
- base-reth-archive:/root/.local/share/reth/base
|
|
||||||
- /slowdisk:/slowdisk
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.base-archive-stripprefix.stripprefix.prefixes=/base-archive"
|
|
||||||
- "traefik.http.services.base-archive.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.base-archive.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.base-archive.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.base-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/base-archive`)"
|
|
||||||
- "traefik.http.routers.base-archive.middlewares=base-archive-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
|
|
||||||
base-archive-node:
|
|
||||||
build:
|
|
||||||
context: ./op
|
|
||||||
depends_on:
|
|
||||||
- base-archive
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC
|
|
||||||
- 43470 # P2P TCP
|
|
||||||
- 43470/udp # P2P UDP
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
ports:
|
|
||||||
- "43470:43470"
|
|
||||||
- "43470:43470/udp"
|
|
||||||
#command: [ "sh", "./op-node-entrypoint" ]
|
|
||||||
entrypoint: ./op-node
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
environment:
|
|
||||||
- "OP_NODE_NETWORK=base-mainnet"
|
|
||||||
- "OP_NODE_SYNCMODE=execution-layer"
|
|
||||||
- "OP_NODE_L1_ETH_RPC=${BASE_ETHEREUM_ENDPOINT}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/jwtsecret"
|
|
||||||
- "OP_NODE_L2_ENGINE_RPC=http://base-archive:9551"
|
|
||||||
- "OP_NODE_LOG_LEVEL=info"
|
|
||||||
- "OP_NODE_METRICS_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_METRICS_ENABLED=true"
|
|
||||||
- "OP_NODE_METRICS_PORT=7300"
|
|
||||||
- "OP_NODE_P2P_AGENT=base"
|
|
||||||
- "OP_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG"
|
|
||||||
- "OP_NODE_P2P_LISTEN_IP=0.0.0.0"
|
|
||||||
- "OP_NODE_P2P_LISTEN_TCP_PORT=43470"
|
|
||||||
- "OP_NODE_P2P_LISTEN_UDP_PORT=43470"
|
|
||||||
- "OP_NODE_ROLLUP_CONFIG=mainnet/rollup.json"
|
|
||||||
- "OP_NODE_RPC_ADDR=0.0.0.0"
|
|
||||||
- "OP_NODE_RPC_PORT=8545"
|
|
||||||
- "OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log"
|
|
||||||
- "OP_NODE_VERIFIER_L1_CONFS=4"
|
|
||||||
- "OP_NODE_L1_RPC_KIND=${BASE_ETHEREUM_ENDPOINT_KIND:-basic}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=${BASE_ETHEREUM_ENDPOINT_TRUST:-false}"
|
|
||||||
- "OP_NODE_L1_BEACON=${BASE_ETHEREUM_ENDPOINT_BEACON}"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
base-reth-archive:
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
FROM golang:1.21 as op
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
ENV REPO=https://github.com/ethereum-optimism/optimism.git
|
|
||||||
ENV VERSION=v1.7.7
|
|
||||||
|
|
||||||
RUN git clone $REPO --branch op-node/$VERSION --single-branch . && \
|
|
||||||
git switch -c branch-$VERSION
|
|
||||||
|
|
||||||
RUN cd op-node && \
|
|
||||||
make op-node
|
|
||||||
|
|
||||||
FROM golang:1.21 as geth
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
ENV REPO=https://github.com/ethereum-optimism/op-geth.git
|
|
||||||
ENV VERSION=v1.101315.2
|
|
||||||
|
|
||||||
# avoid depth=1, so the geth build can read tags
|
|
||||||
RUN git clone $REPO --branch $VERSION --single-branch . && \
|
|
||||||
git switch -c branch-$VERSION
|
|
||||||
|
|
||||||
RUN go run build/ci.go install -static ./cmd/geth
|
|
||||||
|
|
||||||
FROM golang:1.21
|
|
||||||
|
|
||||||
RUN apt-get update && \
|
|
||||||
apt-get install -y jq curl && \
|
|
||||||
rm -rf /var/lib/apt/lists
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
COPY --from=op /app/op-node/bin/op-node ./
|
|
||||||
COPY --from=geth /app/build/bin/geth ./
|
|
||||||
COPY geth-entrypoint .
|
|
||||||
COPY op-node-entrypoint .
|
|
||||||
COPY mainnet ./mainnet
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
FROM golang:1.19 as op
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
ENV REPO=https://github.com/ethereum-optimism/optimism.git
|
|
||||||
ENV VERSION=v1.1.4
|
|
||||||
# for verification:
|
|
||||||
ENV COMMIT=5877ee24cc9aaef5848c1372e0e196707fb336a0
|
|
||||||
|
|
||||||
RUN git clone $REPO --branch op-node/$VERSION --single-branch . && \
|
|
||||||
git switch -c branch-$VERSION && \
|
|
||||||
bash -c '[ "$(git rev-parse HEAD)" = "$COMMIT" ]'
|
|
||||||
|
|
||||||
RUN cd op-node && \
|
|
||||||
make op-node
|
|
||||||
|
|
||||||
|
|
||||||
FROM docker.io/library/golang:1.20-alpine3.17 AS op-erigon
|
|
||||||
|
|
||||||
RUN apk add --no-cache make g++ gcc musl-dev linux-headers git
|
|
||||||
ARG ERIGON_VERSION=v2.48.1-0.1.11
|
|
||||||
ARG ERIGON_REPOSITORY=https://github.com/testinprod-io/op-erigon.git
|
|
||||||
|
|
||||||
RUN git clone --recurse-submodules -j8 $ERIGON_REPOSITORY
|
|
||||||
|
|
||||||
WORKDIR ./erigon
|
|
||||||
|
|
||||||
RUN git checkout ${ERIGON_VERSION}
|
|
||||||
|
|
||||||
RUN make erigon
|
|
||||||
|
|
||||||
|
|
||||||
FROM golang:1.19
|
|
||||||
|
|
||||||
RUN apt-get update && \
|
|
||||||
apt-get install -y jq curl && \
|
|
||||||
rm -rf /var/lib/apt/lists
|
|
||||||
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
COPY --from=op /app/op-node/bin/op-node ./
|
|
||||||
COPY --from=op-erigon /go/erigon/build/bin/erigon ./
|
|
||||||
|
|
||||||
COPY erigon-entrypoint .
|
|
||||||
COPY op-node-entrypoint .
|
|
||||||
COPY goerli ./goerli
|
|
||||||
COPY mainnet ./mainnet
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# exit script on any error
|
|
||||||
set -e
|
|
||||||
|
|
||||||
ERIGON_HOME=/root/.local/share/erigon
|
|
||||||
OP_GETH_GENESIS_FILE_PATH="${OP_GETH_GENESIS_FILE_PATH:-/genesis.json}"
|
|
||||||
CHAIN_ID=$(jq -r .config.chainId < "$OP_GETH_GENESIS_FILE_PATH")
|
|
||||||
RPC_PORT="${RPC_PORT:-8545}"
|
|
||||||
WS_PORT="${WS_PORT:-8546}"
|
|
||||||
AUTHRPC_PORT="${AUTHRPC_PORT:-8551}"
|
|
||||||
METRICS_PORT="${METRICS_PORT:-6060}"
|
|
||||||
HOST_IP="0.0.0.0"
|
|
||||||
P2P_PORT="${P2P_PORT:-30303}"
|
|
||||||
|
|
||||||
|
|
||||||
if [ ! -f "${ERIGON_HOME}/bootstrapped" ];
|
|
||||||
then
|
|
||||||
echo "write the custom genesis block"
|
|
||||||
mkdir -p ${ERIGON_HOME:-/root/.local/share/erigon}
|
|
||||||
erigon init --datadir ${ERIGON_HOME:-/root/.local/share/erigon} $OP_GETH_GENESIS_FILE_PATH
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "$OP_NODE_L2_ENGINE_AUTH_RAW" > "$OP_NODE_L2_ENGINE_AUTH"
|
|
||||||
|
|
||||||
exec erigon \
|
|
||||||
--private.api.addr=localhost:9090 \
|
|
||||||
--port=$P2P_PORT
|
|
||||||
--http.api=eth,debug,net,trace,web3,erigon \
|
|
||||||
--http.addr=0.0.0.0 \
|
|
||||||
--http.port=8545 \
|
|
||||||
--http.corsdomain="*" \
|
|
||||||
--http.vhosts="*" \
|
|
||||||
--authrpc.addr=0.0.0.0 \
|
|
||||||
--authrpc.port=8551 \
|
|
||||||
--authrpc.vhosts="*" \
|
|
||||||
--authrpc.jwtsecret=${OP_NODE_L2_ENGINE_AUTH}
|
|
||||||
--rollup.sequencerhttp="$OP_GETH_SEQUENCER_HTTP"
|
|
||||||
--rollup.historicalrpc="http://optimism-l2geth:8545"
|
|
||||||
--chain=optimism-mainnet
|
|
||||||
--networkid=$CHAIN_ID
|
|
||||||
--ws
|
|
||||||
--ws.port=8545
|
|
||||||
--nodiscover
|
|
||||||
volumes:
|
|
||||||
- erigon-optimism-bedrock:/root/.local/share/erigon
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
|
|
||||||
@@ -1,81 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -eu
|
|
||||||
|
|
||||||
VERBOSITY=${GETH_VERBOSITY:-3}
|
|
||||||
GETH_DATA_DIR=/data
|
|
||||||
GETH_CHAINDATA_DIR="$GETH_DATA_DIR/geth/chaindata"
|
|
||||||
OP_GETH_GENESIS_FILE_PATH="${OP_GETH_GENESIS_FILE_PATH:-/genesis.json}"
|
|
||||||
CHAIN_ID=$(jq -r .config.chainId < "$OP_GETH_GENESIS_FILE_PATH")
|
|
||||||
RPC_PORT="${RPC_PORT:-8545}"
|
|
||||||
WS_PORT="${WS_PORT:-8546}"
|
|
||||||
AUTHRPC_PORT="${AUTHRPC_PORT:-8551}"
|
|
||||||
METRICS_PORT="${METRICS_PORT:-6060}"
|
|
||||||
HOST_IP="0.0.0.0"
|
|
||||||
P2P_PORT="${P2P_PORT:-30303}"
|
|
||||||
ADDITIONAL_ARGS=""
|
|
||||||
|
|
||||||
#mkdir -p $GETH_DATA_DIR
|
|
||||||
|
|
||||||
#if [ ! -d "$GETH_CHAINDATA_DIR" ]; then
|
|
||||||
# echo "$GETH_CHAINDATA_DIR missing, running init"
|
|
||||||
# echo "Initializing genesis."
|
|
||||||
# ./geth --verbosity="$VERBOSITY" init \
|
|
||||||
# --datadir="$GETH_DATA_DIR" \
|
|
||||||
# "$OP_GETH_GENESIS_FILE_PATH"
|
|
||||||
#else
|
|
||||||
# echo "$GETH_CHAINDATA_DIR exists."
|
|
||||||
#fi
|
|
||||||
|
|
||||||
#wget https://base-mainnet-archive-snapshots.s3.us-east-1.amazonaws.com/$(curl https://base-mainnet-archive-snapshots.s3.us-east-1.amazonaws.com/latest)
|
|
||||||
|
|
||||||
#if [ ! -f "${GETH_DATA_DIR}/bootstrapped" ];
|
|
||||||
#then
|
|
||||||
# echo "downloading snapshot"
|
|
||||||
# rm -rf $GETH_DATA_DIR/geth
|
|
||||||
# wget --tries=0 -O - "https://base-mainnet-archive-snapshots.s3.us-east-1.amazonaws.com/$(curl https://base-mainnet-archive-snapshots.s3.us-east-1.amazonaws.com/latest)" | tar -xz --strip-components=1 -C ${GETH_DATA_DIR} && touch ${GETH_DATA_DIR}/bootstrapped
|
|
||||||
#fi
|
|
||||||
|
|
||||||
echo "$OP_NODE_L2_ENGINE_AUTH_RAW" > "$OP_NODE_L2_ENGINE_AUTH"
|
|
||||||
|
|
||||||
if [ "${OP_GETH_ETH_STATS+x}" = x ]; then
|
|
||||||
ADDITIONAL_ARGS="$ADDITIONAL_ARGS --ethstats=$OP_GETH_ETH_STATS"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "${OP_GETH_ALLOW_UNPROTECTED_TXS+x}" = x ]; then
|
|
||||||
ADDITIONAL_ARGS="$ADDITIONAL_ARGS --rpc.allow-unprotected-txs=$OP_GETH_ALLOW_UNPROTECTED_TXS"
|
|
||||||
fi
|
|
||||||
|
|
||||||
exec ./geth \
|
|
||||||
--datadir="$GETH_DATA_DIR" \
|
|
||||||
--verbosity="$VERBOSITY" \
|
|
||||||
--http \
|
|
||||||
--http.corsdomain="*" \
|
|
||||||
--http.vhosts="*" \
|
|
||||||
--http.addr=0.0.0.0 \
|
|
||||||
--http.port="$RPC_PORT" \
|
|
||||||
--http.api=web3,debug,eth,net,engine \
|
|
||||||
--authrpc.addr=0.0.0.0 \
|
|
||||||
--authrpc.port="$AUTHRPC_PORT" \
|
|
||||||
--authrpc.vhosts="*" \
|
|
||||||
--authrpc.jwtsecret="$OP_NODE_L2_ENGINE_AUTH" \
|
|
||||||
--ws \
|
|
||||||
--ws.addr=0.0.0.0 \
|
|
||||||
--ws.port="$WS_PORT" \
|
|
||||||
--ws.origins="*" \
|
|
||||||
--ws.api=debug,eth,net,engine \
|
|
||||||
--metrics \
|
|
||||||
--metrics.addr=0.0.0.0 \
|
|
||||||
--metrics.port="$METRICS_PORT" \
|
|
||||||
--syncmode=full \
|
|
||||||
--gcmode=${OP_GETH_GCMODE:-archive} \
|
|
||||||
--state.scheme=${OP_GETH_STATE_SCHEME:-hash} \
|
|
||||||
--db.engine=${GETH_DB_ENGINE:-leveldb} \
|
|
||||||
--discovery.port=${P2P_PORT:-30303} \
|
|
||||||
--maxpeers=100 \
|
|
||||||
--nat=extip:$HOST_IP \
|
|
||||||
--networkid="$CHAIN_ID" \
|
|
||||||
--op-network="base-mainnet" \
|
|
||||||
--rollup.halt=major \
|
|
||||||
--rollup.sequencerhttp="$OP_GETH_SEQUENCER_HTTP" \
|
|
||||||
--port=${P2P_PORT} \
|
|
||||||
$ADDITIONAL_ARGS # intentionally unquoted
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
"genesis": {
|
|
||||||
"l1": {
|
|
||||||
"hash": "0x73d89754a1e0387b89520d989d3be9c37c1f32495a88faf1ea05c61121ab0d19",
|
|
||||||
"number": 8410981
|
|
||||||
},
|
|
||||||
"l2": {
|
|
||||||
"hash": "0xa3ab140f15ea7f7443a4702da64c10314eb04d488e72974e02e2d728096b4f76",
|
|
||||||
"number": 0
|
|
||||||
},
|
|
||||||
"l2_time": 1675193616,
|
|
||||||
"system_config": {
|
|
||||||
"batcherAddr": "0x2d679b567db6187c0c8323fa982cfb88b74dbcc7",
|
|
||||||
"overhead": "0x0000000000000000000000000000000000000000000000000000000000000834",
|
|
||||||
"scalar": "0x00000000000000000000000000000000000000000000000000000000000f4240",
|
|
||||||
"gasLimit": 25000000
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"block_time": 2,
|
|
||||||
"max_sequencer_drift": 600,
|
|
||||||
"seq_window_size": 3600,
|
|
||||||
"channel_timeout": 300,
|
|
||||||
"l1_chain_id": 5,
|
|
||||||
"l2_chain_id": 84531,
|
|
||||||
"batch_inbox_address": "0x8453100000000000000000000000000000000000",
|
|
||||||
"deposit_contract_address": "0xe93c8cd0d409341205a592f8c4ac1a5fe5585cfa",
|
|
||||||
"l1_system_config_address": "0xb15eea247ece011c68a614e4a77ad648ff495bc1",
|
|
||||||
"regolith_time": 1683219600
|
|
||||||
}
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
"genesis": {
|
|
||||||
"l1": {
|
|
||||||
"hash": "0x5c13d307623a926cd31415036c8b7fa14572f9dac64528e857a470511fc30771",
|
|
||||||
"number": 17481768
|
|
||||||
},
|
|
||||||
"l2": {
|
|
||||||
"hash": "0xf712aa9241cc24369b143cf6dce85f0902a9731e70d66818a3a5845b296c73dd",
|
|
||||||
"number": 0
|
|
||||||
},
|
|
||||||
"l2_time": 1686789347,
|
|
||||||
"system_config": {
|
|
||||||
"batcherAddr": "0x5050f69a9786f081509234f1a7f4684b5e5b76c9",
|
|
||||||
"overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc",
|
|
||||||
"scalar": "0x00000000000000000000000000000000000000000000000000000000000a6fe0",
|
|
||||||
"gasLimit": 30000000
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"block_time": 2,
|
|
||||||
"max_sequencer_drift": 600,
|
|
||||||
"seq_window_size": 3600,
|
|
||||||
"channel_timeout": 300,
|
|
||||||
"l1_chain_id": 1,
|
|
||||||
"l2_chain_id": 8453,
|
|
||||||
"regolith_time": 0,
|
|
||||||
"batch_inbox_address": "0xff00000000000000000000000000000000008453",
|
|
||||||
"deposit_contract_address": "0x49048044d57e1c92a77f79988d21fa8faf74e97e",
|
|
||||||
"l1_system_config_address": "0x73a79fab69143498ed3712e519a88a918e1f4072"
|
|
||||||
}
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -eu
|
|
||||||
|
|
||||||
# wait until local geth comes up (authed so will return 401 without token)
|
|
||||||
until [ "$(curl -s -w '%{http_code}' -o /dev/null "$OP_NODE_L2_ENGINE_RPC")" -eq 401 ]; do
|
|
||||||
echo "waiting for geth to be ready"
|
|
||||||
sleep 5
|
|
||||||
done
|
|
||||||
|
|
||||||
# public-facing P2P node, advertise public IP address
|
|
||||||
PUBLIC_IP=$(curl -s v4.ident.me)
|
|
||||||
export OP_NODE_P2P_ADVERTISE_IP=$PUBLIC_IP
|
|
||||||
|
|
||||||
echo "$OP_NODE_L2_ENGINE_AUTH_RAW" > "$OP_NODE_L2_ENGINE_AUTH"
|
|
||||||
|
|
||||||
exec ./op-node
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,30 +0,0 @@
|
|||||||
{
|
|
||||||
"genesis": {
|
|
||||||
"l1": {
|
|
||||||
"hash": "0xcac9a83291d4dec146d6f7f69ab2304f23f5be87b1789119a0c5b1e4482444ed",
|
|
||||||
"number": 4370868
|
|
||||||
},
|
|
||||||
"l2": {
|
|
||||||
"hash": "0x0dcc9e089e30b90ddfc55be9a37dd15bc551aeee999d2e2b51414c54eaf934e4",
|
|
||||||
"number": 0
|
|
||||||
},
|
|
||||||
"l2_time": 1695768288,
|
|
||||||
"system_config": {
|
|
||||||
"batcherAddr": "0x6cdebe940bc0f26850285caca097c11c33103e47",
|
|
||||||
"overhead": "0x0000000000000000000000000000000000000000000000000000000000000834",
|
|
||||||
"scalar": "0x00000000000000000000000000000000000000000000000000000000000f4240",
|
|
||||||
"gasLimit": 25000000
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"block_time": 2,
|
|
||||||
"max_sequencer_drift": 600,
|
|
||||||
"seq_window_size": 3600,
|
|
||||||
"channel_timeout": 300,
|
|
||||||
"l1_chain_id": 11155111,
|
|
||||||
"l2_chain_id": 84532,
|
|
||||||
"regolith_time": 0,
|
|
||||||
"batch_inbox_address": "0xff00000000000000000000000000000000084532",
|
|
||||||
"deposit_contract_address": "0x49f53e41452c74589e85ca1677426ba426459e85",
|
|
||||||
"l1_system_config_address": "0xf272670eb55e895584501d564afeb048bed26194",
|
|
||||||
"protocol_versions_address": "0x0000000000000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
@@ -1,86 +0,0 @@
|
|||||||
services:
|
|
||||||
berachain-artio:
|
|
||||||
image: ghcr.io/paradigmxyz/reth:${RETH_VERSION:-v1.0.6}
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- "berachain-artio-reth:/data"
|
|
||||||
- "/slowdisk:/slowdisk"
|
|
||||||
- "./berachain/artio/config:/config"
|
|
||||||
- ".jwtsecret:/jwtsecret"
|
|
||||||
expose:
|
|
||||||
- 44169
|
|
||||||
- 8545
|
|
||||||
- 9001
|
|
||||||
- 8551
|
|
||||||
ports:
|
|
||||||
- "44169:44169"
|
|
||||||
- "44169:44169/udp"
|
|
||||||
restart: unless-stopped
|
|
||||||
command: node --chain /config/eth-genesis.json --p2p-secret-key /config/discovery-secret --datadir /data --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 6444 --discovery.port 6444 --authrpc.addr 0.0.0.0 --authrpc.jwtsecret /jwtsecret --http.api "debug,eth,net,trace,txpool,web3,rpc,reth" --ws.api "debug,eth,net,trace,txpool,web3,rpc,reth" --http.corsdomain '*' --rpc.max-logs-per-response 1100000 --rpc.gascap 600000000 --bootnodes enode://0401e494dbd0c84c5c0f72adac5985d2f2525e08b68d448958aae218f5ac8198a80d1498e0ebec2ce38b1b18d6750f6e61a56b4614c5a6c6cf0981c39aed47dc@34.159.32.127:30303,enode://9b6c1eb143c9e3af0c7283262a9a38fe8bf844114b1f304673c2ac1c23e6bccfdaa8f4e9cb8c460bded495933fd92eeff30e6ab2e0538b56e249beea2c512906@35.234.88.149:30303,enode://e9675164b5e17b9d9edf0cc2bd79e6b6f487200c74d1331c220abb5b8ee80c2eefbf18213989585e9d0960683e819542e11d4eefb5f2b4019e1e49f9fd8fff18@berav2-bootnode.staketab.org:30303,enode://16e21c20f670d9e88570b8d3c580c7ef54f3515bffab864f1f3047c4125c3e7d98e782b990165808363a1b54ddca51c9dafaca9d6cd7ecca93e2e809ba522cae@berachain-testnet-v2.enode.l0vd.com:30304,enode://e31aa249638083d34817eed2b499ccd4b0718a332f0ea530e3062e13f624cb03a7d6b6e0460193ee87b5fc12e73a726070a3126ef53492ffbdc5e6c102f6dfb3@34.64.198.56:30303,enode://3f2f85e2e711f198fb7324b74fab6a0599b2534774f3aa26241dbbabe870b650574324da01aa98ee24ce97c8d76362a2db03034a6ddff43119ccfdc269663cbf@34.47.79.13:30303,enode://7a2f67d22b12e10c6ba9cd951866dda6471604be5fbd5102217dbad1cc56e590befd2009ecc99958a468a5b8e0dc28e14d9b6822491719c93199be6aa0319077@34.124.220.31:30303,enode://a96aac0b81c7e75fecc2ae613eaf13b27b2aaf3d46a90db904f94797d1746aa31e6593ae4cd476f81d5c6d1d2228ca60c885727978c369586c38871c63a330ee@35.240.182.27:30303,enode://dc44744074ac2dd76db0e0f9d95eb86cd558f6ba75e4a4af1303f2259624c8ce041198f976862a284165253b6dc6b2fa91b995cbca3ef2683879b6247e05e553@34.95.61.239:30303,enode://bf5364e1cf7ecd11646ccaea5c06b56622c04d52200d9cd141e01db9c9661237ceebecde1616e66e390a968ffd1c07e027531cad23044517b7bf36caa8b97f5f@34.152.41.26:30303,enode://f61e51c18fdb6ddf5e520209c53a0e60b2864d168eb0d3c02541050de9fee003b61818c7f70b32b61adee082280e7de4811fd3da47d87c87b3d17bf44e3bb76c@beacond-testnet.blacknodes.net:30303,enode://f24b54da77cf604e92aeb5ee5e79401fd3e66111563ca630e72330ccab6f385ccbbde5eba4577ee7bfb5e83347263d0e4cad042fd4c10468d0e38906fc82ba31@bera-testnet-seeds.nodeinfra.com:30303,enode://2e44e8e12b4666632dd2d4d555cfca5ceac4ca6cf6f45c46fc0ba27d1f9f7578dd598c74ae8b4189430a85b15d103c215a63cdbeafd41895fee1405a094fa77a@135.125.188.10:30303 --trusted-peers enode://0401e494dbd0c84c5c0f72adac5985d2f2525e08b68d448958aae218f5ac8198a80d1498e0ebec2ce38b1b18d6750f6e61a56b4614c5a6c6cf0981c39aed47dc@34.159.32.127:30303,enode://9b6c1eb143c9e3af0c7283262a9a38fe8bf844114b1f304673c2ac1c23e6bccfdaa8f4e9cb8c460bded495933fd92eeff30e6ab2e0538b56e249beea2c512906@35.234.88.149:30303,enode://e9675164b5e17b9d9edf0cc2bd79e6b6f487200c74d1331c220abb5b8ee80c2eefbf18213989585e9d0960683e819542e11d4eefb5f2b4019e1e49f9fd8fff18@berav2-bootnode.staketab.org:30303,enode://16e21c20f670d9e88570b8d3c580c7ef54f3515bffab864f1f3047c4125c3e7d98e782b990165808363a1b54ddca51c9dafaca9d6cd7ecca93e2e809ba522cae@berachain-testnet-v2.enode.l0vd.com:30304,enode://e31aa249638083d34817eed2b499ccd4b0718a332f0ea530e3062e13f624cb03a7d6b6e0460193ee87b5fc12e73a726070a3126ef53492ffbdc5e6c102f6dfb3@34.64.198.56:30303,enode://3f2f85e2e711f198fb7324b74fab6a0599b2534774f3aa26241dbbabe870b650574324da01aa98ee24ce97c8d76362a2db03034a6ddff43119ccfdc269663cbf@34.47.79.13:30303,enode://7a2f67d22b12e10c6ba9cd951866dda6471604be5fbd5102217dbad1cc56e590befd2009ecc99958a468a5b8e0dc28e14d9b6822491719c93199be6aa0319077@34.124.220.31:30303,enode://a96aac0b81c7e75fecc2ae613eaf13b27b2aaf3d46a90db904f94797d1746aa31e6593ae4cd476f81d5c6d1d2228ca60c885727978c369586c38871c63a330ee@35.240.182.27:30303,enode://dc44744074ac2dd76db0e0f9d95eb86cd558f6ba75e4a4af1303f2259624c8ce041198f976862a284165253b6dc6b2fa91b995cbca3ef2683879b6247e05e553@34.95.61.239:30303,enode://bf5364e1cf7ecd11646ccaea5c06b56622c04d52200d9cd141e01db9c9661237ceebecde1616e66e390a968ffd1c07e027531cad23044517b7bf36caa8b97f5f@34.152.41.26:30303,enode://f61e51c18fdb6ddf5e520209c53a0e60b2864d168eb0d3c02541050de9fee003b61818c7f70b32b61adee082280e7de4811fd3da47d87c87b3d17bf44e3bb76c@beacond-testnet.blacknodes.net:30303,enode://f24b54da77cf604e92aeb5ee5e79401fd3e66111563ca630e72330ccab6f385ccbbde5eba4577ee7bfb5e83347263d0e4cad042fd4c10468d0e38906fc82ba31@bera-testnet-seeds.nodeinfra.com:30303,enode://2e44e8e12b4666632dd2d4d555cfca5ceac4ca6cf6f45c46fc0ba27d1f9f7578dd598c74ae8b4189430a85b15d103c215a63cdbeafd41895fee1405a094fa77a@135.125.188.10:30303
|
|
||||||
stop_grace_period: 1m
|
|
||||||
labels:
|
|
||||||
- "prometheus-scrape.enabled=true"
|
|
||||||
- "prometheus-scrape.port=9001"
|
|
||||||
- "prometheus-scrape.job_name=berachain-artio"
|
|
||||||
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.berachain-artio-stripprefix.stripprefix.prefixes=/berachain-artio"
|
|
||||||
- "traefik.http.services.berachain-artio.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.berachain-artio.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.berachain-artio.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.berachain-artio.rule=Host(`$DOMAIN`) && PathPrefix(`/berachain-artio`)"
|
|
||||||
- "traefik.http.routers.berachain-artio.middlewares=berachain-artio-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
berachain-artio-node-prepare:
|
|
||||||
image: icculp/berachain_beacon:v0.2.0-alpha.6
|
|
||||||
environment:
|
|
||||||
- "MONIKER=d${DOMAIN}"
|
|
||||||
command: init ${MONIKER} --chain-id bartio-beacon-80084 --consensus-key-algo bls12_381 --home /root/.beacond/ --overwrite
|
|
||||||
volumes:
|
|
||||||
- "berachain-artio-node:/root/.beacond/data"
|
|
||||||
- "./berachain/artio/config:/root/.beacond/config"
|
|
||||||
|
|
||||||
berachain-artio-node-init:
|
|
||||||
image: alpine:latest
|
|
||||||
depends_on:
|
|
||||||
- "berachain-artio-node-prepare"
|
|
||||||
environment:
|
|
||||||
- "MONIKER=d${DOMAIN}"
|
|
||||||
volumes:
|
|
||||||
- "./berachain/artio/script/init.sh:/init.sh"
|
|
||||||
- "./berachain/artio/config:/root/.beacond/config"
|
|
||||||
entrypoint: [ "sh", "-c", "apk add --no-cache curl && sh /init.sh" ]
|
|
||||||
|
|
||||||
berachain-artio-node:
|
|
||||||
image: icculp/berachain_beacon:v0.2.0-alpha.6
|
|
||||||
depends_on:
|
|
||||||
- "berachain-artio-node-init"
|
|
||||||
expose:
|
|
||||||
- 26657 #rpc
|
|
||||||
ports:
|
|
||||||
- "43471:43471"
|
|
||||||
- "43471:43471/udp"
|
|
||||||
command: start --minimum-gas-prices 0atom --beacon-kit.engine.jwt-secret-path /jwtsecret --beacon-kit.kzg.trusted-setup-path /root/.beacond/config/kzg-trusted-setup.json
|
|
||||||
#command: init cometing --chain-id bartio-beacon-80084 --consensus-key-algo bls12_381 --home /root/.beacond/
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
volumes:
|
|
||||||
- "berachain-artio-node:/root/.beacond/data"
|
|
||||||
- "./berachain/artio/config:/root/.beacond/config"
|
|
||||||
- ".jwtsecret:/jwtsecret"
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 1m
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.berachain-artio-node-stripprefix.stripprefix.prefixes=/berachain-artio-node"
|
|
||||||
- "traefik.http.services.berachain-artio-node.loadbalancer.server.port=26657"
|
|
||||||
- "traefik.http.routers.berachain-artio-node.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.berachain-artio-node.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.berachain-artio-node.rule=Host(`$DOMAIN`) && PathPrefix(`/berachain-artio-node`)"
|
|
||||||
- "traefik.http.routers.berachain-artio-node.middlewares=berachain-artio-node-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
berachain-artio-reth:
|
|
||||||
berachain-artio-node:
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
methods:
|
|
||||||
enabled:
|
|
||||||
- name: txpool_content
|
|
||||||
options:
|
|
||||||
validate-peers: false
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
methods:
|
|
||||||
enabled:
|
|
||||||
- name: txpool_content
|
|
||||||
options:
|
|
||||||
validate-peers: false
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
@@ -1,95 +0,0 @@
|
|||||||
services:
|
|
||||||
|
|
||||||
berachain-bepolia:
|
|
||||||
image: ghcr.io/paradigmxyz/reth:${RETH_VERSION:-v1.3.2}
|
|
||||||
depends_on:
|
|
||||||
- berachain-bepolia-node
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- "berachain-bepolia-reth:/data"
|
|
||||||
- "/slowdisk:/slowdisk"
|
|
||||||
- "./berachain/bepolia/config:/config"
|
|
||||||
- ".jwtsecret:/jwtsecret"
|
|
||||||
expose:
|
|
||||||
- 54371
|
|
||||||
- 8545
|
|
||||||
- 9001
|
|
||||||
- 8551
|
|
||||||
ports:
|
|
||||||
- "54371:54371"
|
|
||||||
- "54371:54371/udp"
|
|
||||||
restart: unless-stopped
|
|
||||||
command: >
|
|
||||||
node
|
|
||||||
--chain /config/eth-genesis.json
|
|
||||||
--p2p-secret-key /config/discovery-secret
|
|
||||||
--datadir /data
|
|
||||||
--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 6444
|
|
||||||
--discovery.port 6444
|
|
||||||
--authrpc.addr 0.0.0.0
|
|
||||||
--authrpc.jwtsecret /jwtsecret
|
|
||||||
--http.api "debug,eth,net,trace,txpool,web3,rpc,reth"
|
|
||||||
--ws.api "debug,eth,net,trace,txpool,web3,rpc,reth"
|
|
||||||
--http.corsdomain '*'
|
|
||||||
--rpc.max-logs-per-response 1100000
|
|
||||||
--rpc.gascap 600000000
|
|
||||||
--bootnodes enode://0c5a4a3c0e81fce2974e4d317d88df783731183d534325e32e0fdf8f4b119d7889fa254d3a38890606ec300d744e2aa9c87099a4a032f5c94efe53f3fcdfecfe@34.64.176.79:30303,enode://5b037f66099d5ded86eb7e1619f6d06ceb15609e8cc345ced22a4772b06178004e1490a3cd32fd1222789de4c6e4021c2d648a3d750f6d5323e64b771bbd8de7@34.87.142.180:30303,enode://bb7e44178543431feac8f0ee3827056b7b84d8235b802a8bdbbcd4939dab7f7dd2579ff577a38b002bb0139792af67abd2dd5c9f4f85b8da6e914fa76dca82bc@35.198.150.35:30303,enode://d071fa740e063ce1bb9cdc2b7937baeff6dc4000f91588d730a731c38a6ff0d4015814812c160fab8695e46f74b9b618735368ea2f16db4d785f16d29b3fb7b0@35.203.2.210:30303,enode://0c5a4a3c0e81fce2974e4d317d88df783731183d534325e32e0fdf8f4b119d7889fa254d3a38890606ec300d744e2aa9c87099a4a032f5c94efe53f3fcdfecfe@34.64.176.79:30303
|
|
||||||
stop_grace_period: 1m
|
|
||||||
labels:
|
|
||||||
- "prometheus-scrape.enabled=true"
|
|
||||||
- "prometheus-scrape.port=9001"
|
|
||||||
- "prometheus-scrape.job_name=berachain-bepolia"
|
|
||||||
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.berachain-bepolia-stripprefix.stripprefix.prefixes=/berachain-bepolia"
|
|
||||||
- "traefik.http.services.berachain-bepolia.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.berachain-bepolia.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.berachain-bepolia.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.berachain-bepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/berachain-bepolia`)"
|
|
||||||
- "traefik.http.routers.berachain-bepolia.middlewares=berachain-bepolia-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
berachain-bepolia-node:
|
|
||||||
image: ghcr.io/berachain/beacon-kit:v1.1.3
|
|
||||||
expose:
|
|
||||||
- 26657 #rpc
|
|
||||||
ports:
|
|
||||||
- "55696:55696"
|
|
||||||
- "55696:55696/udp"
|
|
||||||
environment:
|
|
||||||
- "MONIKER=d${DOMAIN:-local}"
|
|
||||||
#- "BEACOND_PATH=beacond"
|
|
||||||
- "CHAIN_SPEC=testnet"
|
|
||||||
#- "P2P_PORT=55696"
|
|
||||||
entrypoint: /init.sh
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
volumes:
|
|
||||||
- "./berachain/bepolia/script/init.sh:/init.sh"
|
|
||||||
- "berachain-bepolia-node:/root/.beacond/data"
|
|
||||||
- "./berachain/bepolia/config:/root/.beacond/config"
|
|
||||||
- ".jwtsecret:/jwtsecret"
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 1m
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.berachain-bepolia-node-stripprefix.stripprefix.prefixes=/berachain-bepolia-node"
|
|
||||||
- "traefik.http.services.berachain-bepolia-node.loadbalancer.server.port=26657"
|
|
||||||
- "traefik.http.routers.berachain-bepolia-node.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.berachain-bepolia-node.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.berachain-bepolia-node.rule=Host(`$DOMAIN`) && PathPrefix(`/berachain-bepolia-node`)"
|
|
||||||
- "traefik.http.routers.berachain-bepolia-node.middlewares=berachain-bepolia-node-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
berachain-bepolia-reth:
|
|
||||||
berachain-bepolia-node:
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
methods:
|
|
||||||
enabled:
|
|
||||||
- name: txpool_content
|
|
||||||
options:
|
|
||||||
validate-peers: false
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,666 +0,0 @@
|
|||||||
{
|
|
||||||
"app_name": "beacond",
|
|
||||||
"app_version": "v0.2.0-alpha.0",
|
|
||||||
"genesis_time": "2024-06-05T14:00:00Z",
|
|
||||||
"chain_id": "bartio-beacon-80084",
|
|
||||||
"initial_height": 1,
|
|
||||||
"app_hash": null,
|
|
||||||
"app_state": {
|
|
||||||
"beacon": {
|
|
||||||
"fork_version": "0x04000000",
|
|
||||||
"deposits": [
|
|
||||||
{
|
|
||||||
"pubkey": "0xa00d992e629f49456481e48bf01d0c43ecaf8a8181e9d7115cd0644adbda6b1ed91dd43688e73dcd8145affb3f88f783",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8dd0875e527b580b5e012fbd8f4e25daa4a31869fbd2ec8e2983711b5b2fe2482fb884a6ff0f4525b665fe364fe7d4521530b3cdfe980c2c8f1b72a9102d62b0f818eb2589b6c367f6b080987caf274fb07f3fb938a14b5dd30d86fefc9eda5d",
|
|
||||||
"index": 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x802073a6a4c461797eab0e1992b7bcd1034d752bdc1bde7a1fd89d0227a5b3ec6bcfa575f3a46fed943796e77573ba99",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x85a1d1f7ff277b829aa72b5e5013ba0256bddc19b7d7b7a042e9cd372177f3984df6ed34d052d3cbecc6beb77668f11b1480f240b0b949f12008b41c6b384b928642e43896be740cbd1aaad160218ac2f9f6abc1ca83aa4496a465d302bcd1e2",
|
|
||||||
"index": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x803a740bde631dadb7bc1e7ebb097418929dd788a48febd457b36b68817856dfa39e100bb8b1c489d2ca6e22c2bc9e30",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb99437d33e39ededff49970b136d4d3a448573847df05cf390a0cc65f5fda739e028d369e2a2340d6b5fe1acb9d823070dbd6dcb3683f06656542b3adede2d0b35dbd2cd7f3790c90c12de3f7fe14c769cb3ac0ef9a5d237fef85d6d511cc513",
|
|
||||||
"index": 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x803d890d50befa2a8000505b53c06de06a3a6ac2f67c76ff7e71b032cbfc13fe50a3caeb2797296b8049791c8d687a84",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x972ceb8e330319bb8cb949c4372f7913827fe8ce29f80817a7b6e1fbcb22a8c331f4f6fef117016f0725391f1848e67108952d7e244a512bf2cba8cee541343e81911e58378a36a63c8edab9024f4ffd08ec6ef37730293fb5326822930ba5ea",
|
|
||||||
"index": 3
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8116be9d2857834e9ba9656d170d3779f63af5dd61d72471234bb0e4e4bfadfe913a65bc316b69c39ee43c4df3bb48d8",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8bb1298aec59a981dbce620d1f476f111416d6e0e28bfadd8937ba4154161c75934fc0e1d7513a4d270e7db71738963b053c3f6d3d885c07c4def44428b38637b1901e32e0ef047105969865a5fecf21e98c63e277fe815998192247c3e6795a",
|
|
||||||
"index": 4
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x815970f90750dd5b0933b856a0c013106f6d5d256f5eaeba237c2cdb5360210ce6733f545fe13c1a3288357cda641ccc",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xaa9a459c5a6a8882e4acca33b169d71213fdf5bb8f8c0937c7dea9dbc1f900f57a9946f584b8950a4364c6b79c8a21821325b28cd5f4837746241591e69681caa05f3f65d762a93eef9210282166d9526c473da9592a00e6f96d18c76eacaaf1",
|
|
||||||
"index": 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x820deef5483a6ae880d46602bbb63c88e93525431b8e2eba28aa52804f1245d9fe0b2683961e32799d9c2658e901a756",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb46c2d3db68084e4c67fd095e998f38bdf4242c7b75832afe309f1fbfb49ef8d7236dba1bec2c306d9672b76db4d33e319885104e13ae06cf993898f79a4902f3f316c395e8f8f80247f2567b24ea19bafb4d7d7da9be35c42bcfe4011b6da5d",
|
|
||||||
"index": 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8233d541c231bd62c66263ddfcec68968409f3367202c1aa2e381fa3cf7fe09b2b3c136ec05dea51c602d302cbb14a2e",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa8a747f3822dc319e61739af38b83c582764c7ad7a1aa644d594147998c1a83058a720d6080685bd4debd309641333d512c0111bd68cf27d6aca4032381581065e28dce068841d7718c5fcae148ec4440fbe3f667c911b22708a06fd910d9449",
|
|
||||||
"index": 7
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x82eab0c7f0c43dff6c79d8cac342f4bf2ba79c2699aa1414e498f797c600e4750cd7f41bd38260e7198bd662e22b1753",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x88a268b5c4d85f5bf82a220cb938c7c745444edd5f504a26b190e1773ed0db831d1be06cce4a572cd2eefb380ce4f02c0e9ac202755ea90283ab2cb79c279d4075ade5a9a165c49f8516752d19a84bf95e5985471a08897c94c3b135ebe81d01",
|
|
||||||
"index": 8
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x82ec5e67683c71b308e54d453bc9c4dcf55a0d8ff6eb2703f97ec837b741cef8cb56a7ba5af11df7a1ca95d753996871",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x85ae7a57a6a7eec0c5f90190d69c12c609634e7fc946194d9244fda0804885b0f3ee564b98439dad614b5ea2a05c715404dfcdf6ffa79e1be3c3779386e096b6aced0056a9f77b1bd4f9ccc9fb8fcfdd58c3f593196539c1894bd791d1021c2a",
|
|
||||||
"index": 9
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x83129767e19218d8fbb50336c069755e9971989ecfb2e463a0e3ce6b782e46ad445774f73ba529400bfab13074ed8d50",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb75c0e67010900ad3481d60d3f2672c83a2e6f0e68c5742c331fca01b754898abddc32c9f130c48e02b3cfeaf80d4dc416b175e1fd8e485085c2e6616eb4cf0daf502be9be8f70b1b735d748b23d8cad5b6ba241c481ea2efd9e8d9e429136d3",
|
|
||||||
"index": 10
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x845fcaa8d94a17dfad3254ea642f1b09be1e192629532b75371fd6433031044c46127d0e2e6306469f067d6b6b173f4d",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x91d39f31a2f64f2b728ad1db3f7d8b05cae0c036998f33ffa4e9bbe44f5ec5e01b173d4481c046c78a5f6e2ff20ee28e1176d7bfcf154f3066f957815d46332a7cc66901d4b9a85736c5beb3577e0261d34fd38d3fb50cdd97b721d874c6c28b",
|
|
||||||
"index": 11
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x86b49b23aa8daca82bf3454ec0a0f437b058d523d84c8c7b344873db0caafa4f83c5e99a174d7dadda2da3bcd800d5d4",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x9292d68379ecb22addb4cf1ee0bf8c07a9f5e5440bbbab5c7f9f4aa8c99f03f6cae645b29e3eaedcaf671c6c24e2cd2900e00ad09b6ce8a1868e3dbfeee4579398b3e50fd5e6eabdbf97269956064d4e9df40a5897e573d8d45775e06a02000c",
|
|
||||||
"index": 12
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8785427f42b3e8e5cf89febbc8dc9de5eadf5206274d6f7c1b23b6dd0e21ba973cf46d2990aecdae3f8c8fc90ba5e509",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x80ab9bfe6e287a44d81bae69b4d6f8854c24f5ea07b014385396b385a2cdb8d5175174fc75a129df6390106162788ff71880e612e554e1105bceb13c0fd518382c1c1422f1926aa6d87a4a5fb6f8ec1bd90da060f3e8f802e537f60622517829",
|
|
||||||
"index": 13
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x88f5b4de4b5444fa6aa020bbf3ad21ef0c0f1db9fa8d7ec5c9cc6615081f6ba1c13519bc3b58998e692f9f9884c19ecd",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x86cbcdc41e0a391b648543c2a0507d5d1f534506d523e93a1ebdb6e62d93f4ffc8889f0feb4b8d89c97a99aa5124805f0e2ffb80beff1ac2b37ac4913e1f25cb243676bb6ddc13c3195ac52421efcfb27ed5f5358e246946fdb3bd5c801209d9",
|
|
||||||
"index": 14
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8945aed13d3647ecb17eb5d63006fd39dbbe589906858744366717f7b1835fd29b6e5928dac37b4cab6857a14411d1a0",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8baa25e0f5d90151915bd951202bdeb160e42b2bf85124d261757ace1ceba1924f61e7178539742e844a9c8a13cf8b6d046598796c95dcafb0eb3fb973c325e3270f1f5c6e483e45110d5133cbbcc4bffd2886c60a6b11883b0989fa364ef4e7",
|
|
||||||
"index": 15
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x894d77faba8a266b34d02914716a7c79c36bae1a3db6e2c392911644f196cf43162e98d7ca25499b9df11e119a9c4e5b",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa7d86077f9b85db94abae6f5d2dace84b48a6f52098cdc694590af849647c72defbf34bcc622ca6a0c5dc4f8a5879ea2170d46dde42b9e48d92e6dbbbd974a371573adbc17a40685574125076b204f2071754f7d20e01fbabc8443e0624154a6",
|
|
||||||
"index": 16
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8980056000cbffafa03891b7e573f9fb89d207a8d60dcc66afe1717c7d242cabc914b6237726fb5099f5118e8cf74b2f",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xaebc84ff70d482ce60307e1a627b450cd4d788141ac3ef76f4b05cf2a48e325945b1989585e01616ffdfd932f19c8d5703f7dda2c184d3fe00f24f38ea69ad36eb4d3c58ea2f32fe02984b7a72815a4c245ead2593c2e3fd3361a30b2909bdf7",
|
|
||||||
"index": 17
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x89b93d6c6f37bef27c57a889f93f1fe7aba8cf45aae00c0c8ef3c7390c13e88aaa26f558dd42fcf6fb1b96bf4af67654",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xaa1495a19ec7a9df493b50356b572d1a66c8698fa96ab2e5218aa52042bb041fceaf5b7ac09750875a326405151c801b108e348a691557b0cc688a3cd34436292a6824b47efe7a600f451254c78ea8ed21a0652b14eaec7b4df4274b30cd1848",
|
|
||||||
"index": 18
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8a59bfaca910387d86baa27f5f8d12297634b073f66f57659286323de2b722482377c08ec72db1593a7fdfb378d9dde2",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8348da0fc164543ea2a06eefd408b51c0e895e943489d81a72c4de949fd3f975a1e22fb69cb9c20097ea2c89cc87ac491070995f39cc52ec562197117d95501889d2ddb7c5ae355972e5c999514821090b15c636d7053f4aa44a5da58adedc4f",
|
|
||||||
"index": 19
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8a80e8f9195233e6c010dae5b766e15ba6769019532aec010ae39de66e78b9f858dbcb58bc45c94fcbeebdfb23021496",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa68d6dcfa58bf2caf3da4acc5a40aa74319a144358707b1f530d1484eb4f2895ba7302ff3415d26dbb5ca1fe1e2939c119facd32b4233b924efa19331451d5bff9cb7a3fbe2717062ffa39f6f1537b30f0e44d1c29c7dad8e4f2274215f91abe",
|
|
||||||
"index": 20
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8aa5063df652fe5f2b256d27cb775bb17055f90a213cf2e98720dd68b3743f239b5570bd0b59d24670bc5e4baa98ee60",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb494addf88cf6ceb945c4973344841e4c5acbb415474c7e472015d08ae0239e74b05ab3b059e08c6e298669e929a6c6416b4b5c6ca6dc2b6590b7bc53d48c97f725f0a4e2c9b1e0adc7bc95c563d1e7244196e1dd5683d40d990fd5d55a31729",
|
|
||||||
"index": 21
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8b6c74e44d028ab52b1c99eae2f6e5d1ff595f31c83e7d54a136ebfb0810547048a1ca17a96e5ce5f72ca4a2ef1c6c2d",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xab6567d609118802f7044278b6cd58695491d33372fc6fd3fe0af391a5964cf6e3965f45929d53760aa9d6bc5f2c696107773e798131c6a68648a0cff3d5d52c8d3cda547c2df847741437774d6efc210e8ef619b0fa2ee2dc570e4b18d1ffab",
|
|
||||||
"index": 22
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8c01db4831c9f79bab5b38008315cacf6cc3fc652aca72e42a87fd9e3d514cfac5f8f68b3480fb052bea0a6959968f26",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x93aa85957bea39107a21e61ac586c397ec7a30bd0c409b168ac40d4451551276087fe2be556f768817d57a614ca2db2611dd6d4745ce44c31cbc4ccedf1d1a1bd67ce2229cbd71576c31fcc8fdd88ce80fd98d38feed071433aeb0b0c68ebe9c",
|
|
||||||
"index": 23
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8c02daf8b39c68fa6988a357e9a4cfee6545551e0cd0b4ae2adc7956d3501bb78281cf061aa1bd29f35686a3167c9cfb",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb82d932e987368e07f947ded45a8ad40f0f5001681547185f19191d733614fd3fd994ec589b5ecdf0d421add37b65506128c7f81b827e3c4da6b4fb0141a1434b4041d6cd5fa97e2cb187139618ddb14ea299b7f5fddc63f170ade11efdcc902",
|
|
||||||
"index": 24
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8c3944ea6f448df21e313fd08b4da9ce11bf03071fe77157e7836749a5c8b0b1bcb4d03abdfc38b98b209b755e602eaa",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb2656a6aafbdfb9373e6b920dc01b8570e153c3a0fe2bacf11b8ae4b0f1ab2326b3846b596d9a775308ba928039387a3036cab6f1481b72d3e15c417d294e955908c94aaf7a512fb499d24c029116bf9c54587124824469da4ec2c0215a5d8f1",
|
|
||||||
"index": 25
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8c7b75dcb6d5201457230962ddab40c289258304e960d8aa1597f882fcc215834a24f83088cd2de518a0d42ad441d7d8",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x96ade279c914467adea97243f59f7bfba5145464a5c5ea6bf8059714db09a2bdd6fa35612fabbccec265f02a167df61a08502e99df3dc21563d5676ba4938cef54afff0b54abb3605b8337cc014328acf16973f7df65d18e68236c771e8a50ef",
|
|
||||||
"index": 26
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8cd19ae53d7366e684bb2cadff072da2030d43231da3d6ff9fd46fa13b1e46eca8bdde967a7d150f2641d279af01999c",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa6842026a8f795cf875b30772b47d0b16c82bd97a9e38e730cbce0409786eb31a9853014421edb20d1108c850ed4a39115f187c809fb03e7fe538284ca6dfae58080eab9216b4c30c2d94ba36a2f183e715e15e62523f1a541a2b5e93162fa03",
|
|
||||||
"index": 27
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8d36cf3fd9dffc68d60be901a826c801fdba8461dd553204f2b0e77cb640c3c0af9ef93d001e8f36c151a6eef7d92181",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xaa0032edd910479da6726aaa3f8ed391d3e5819e340f068b1871d3306444a6a2a0d3fcbdbbf65e45c114d8d027a8afc107084d5f03bf9f7786023fe0ecc310c595a08269f04488f9f32e1841b4d5b445ee1ce722f9cc36df3d7e2d481f3761ec",
|
|
||||||
"index": 28
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8d6355b2617156c39d46f448fc0d79e9bef71abda7220289690e2bd99c747799b2c3f2c448cf4b877f1224cedbdd2cd9",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xade66581bf20c8d9f1a4f39968e0dc3517bb602eed940aaf45508e96c0aeb14652ecd70853fd2947e85d2630aed9bb3610f328becd1924a54d262ba47eb5136d01dee3a9696c3b4e3a0ca769cbae41054952e0e945dd5c923363199e7331b1c6",
|
|
||||||
"index": 29
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8df36841a147c771bb523866126d1638dba6040aa207ab71ef915099b485e1a266c7a70f575d8c132af173b029060125",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb69879a5b3a5f8a7c222a16ce17eab0ba8bd7b823d73b9b8d09936ab9bb3714da29a4d355e115bf4d5d475c63a8e38eb05aa92aef6f126113351316ee3a6c9f76e1a10e17bad567b6d34d7d522921dbc13875ebc35f0ca4a8cc33cdae05b4af1",
|
|
||||||
"index": 30
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8e16338b7b4410520e53455578ddb115fb38e969ac3f6b911d5548ab2bc1b65e49c0884272305ccce43e8a9a520fc1e8",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x892316fa06079b988d2718571d46c8d7f614bd7da3a00ecd02a0886f84cb300a98b110efbb986f8d4293a6771d5dd97606cc744f562bb7b933e29767bdd06c978f83284d941832d0b467071bdb7c956a2397ddb5cabb7420efa601f3f0ec9ef3",
|
|
||||||
"index": 31
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8e917ad449923347e4100270a63627ecd26366481128cbc4e47b27716e5471148593737c6c69af53529a9cd867991a5a",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa1dee15196165a5b611000e8d0ef57672e16e4da0c65bc30d88cea8daf45ec1994afb8bdc58de4f1d7881ba0f7632e951969acc774e717f6424bbe5f3bc27d5f108065b5459cbaa05e60dc43e323adcb4a491e0f37ae062aea3503159076cf96",
|
|
||||||
"index": 32
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8f15e8ff419a03c2c43e342d8186fe996b21f13e66a60dc9979823111274aa9b9760d8b0e11175ea8f3091634a99148a",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa12ff12735e78628c302c1ab061e387bc5a0392a8071d83a34c56f54ba98dc74780f921cdfa4ccb77af302cdf03566eb10516ea92f1e74efdba26d7643cb473fe5cb4da2a776b881e68a487926e52733c0d478f16b67b18d9ce5e5b3977bc87d",
|
|
||||||
"index": 33
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x8ff1f07fa91f3ec32e85f6376e8d76d19f7f669ad800a0977da41d11d2465a00593eaab892baa26c802dc6f56d3d4a74",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x97a48a5e27d7c052b6ab021719e6892f222df05d41fd9a8d3102b90d2dc435dba4963b6287741aa4471a10ea644dabfa03f9872881464e96741f20a0c46836ebd8e53ca860c1b8dbb3c10889d38a293a4f4b77d4085c5d628ce430c960c170f0",
|
|
||||||
"index": 34
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x90a9ae97b311cec6a235abbebe8807a4f13dadd44bf84796ecf17b11fabf0199ce739484fb8af4027c504c9d97cd139a",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb4d4b52301d12f6eb0ed5bdc25e302f8d454511ca608e2c5ac33a81e42629417b583ef574a1a30c7cf724d7a8a693654169b747c1f7978304252e2eecb4ef3265ebb6c283657c6b4c2f6fd1f68545703037ebd8d514bce4f3b849081a2b8faf8",
|
|
||||||
"index": 35
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x90bbf8b3ecf771611126bdcae1999b5e5db75fb1e3dc26b7e544601e96b8eaf8632777e134e5f88eecbf9a1d1c1ec3ab",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x880c24ff5d9812c2f634e11bcc410896b4c74c9c3634baab663a096e58478bf24e0bc1e458f91390b2814ad374d09a11113f52777b87332db186e713629ec0c9653eda880386f74b0d770bfb2f82389b7ace45b270f8e04391d16e904ec38763",
|
|
||||||
"index": 36
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x91516616fdf60487b1e2e1b0111c2a430d4c6fdcfc5c2f89eda7d55aeeb8bd742011c80ed51190805fe7ae28f93d491e",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xacf3957db7586a78b0ca7f7d6c0a58b6a46edc828c45e1ffe9a6ddf515b676e154db70930a2663adb4ae59f6843b88c412f743d33d514e7e0423ca549207c6a64e26c6f698d4ab5c3df8ff5496d78abe57633d3c937b43d224153bf83a010768",
|
|
||||||
"index": 37
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x92cadee5fa6a0c55a86d3af68cd528ec7d6d0c6cad7dde4438c6ea7033ad43466c290a69be3d5d6cb40055280125ea36",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x98d28fd58b7c248cadf1d56e9e11fe4f8852ecaaadf7e8146b4d80bc10cf2948139a16c083527eef3c7e324e8b0bee17034dfd2582a903985997830cadc53bbffacc4bd7fa0c02127565e0a8127dcae038cd73a753ad950f8b1eeeb3fb1e9734",
|
|
||||||
"index": 38
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x936e489ac2ecf49881e0c635e639b509b372204a8c527c5f9e192b5e92f7aae1b5e18e80b800672e6787cd495aed267b",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x81d6ec5ca667a1933185369253036f1fbb7cfd06e03bccb5572a6e09778f8b5884f2a736b118cc4c6ce65a6ec6ab1f0407a1c2b975cfb586b9c1a3907731f29c3f1a29492f0bbeae9242739f1102af9e0d4024a58cf2d341d016381ffadb6b8f",
|
|
||||||
"index": 39
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x94010a0d8ca6510884225346b8a3ef54e0603faa7949aa98fffd2eb380bf4c1c5346c47224a4845d45dfbdc3f4ef9983",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x810267c2e025a1c2add4fcdef3c3e0f88d1f365e62094e8b15068b20e14aa7ce468b109a7dc90661f27b96b8eb1f31bb12711b5862aaf7f0248d06291c26b6a0fee5010bf1f12bdf7376e9288310ce78ace7e60b7e590d6f76f51d6960f838c6",
|
|
||||||
"index": 40
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x9496bd4cff75ed423cde80393682ccfbd2bafce48297e7727ebc1db880b7a10e457a15124fbe3821d45a02fe11ea6d76",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x93a7feb94db606994d9aa0afbdfa6fae40ace80a115468a3ab58dd07a49ce74a4fcca7f526f09fab30e2dfe17621cd650c354b1e428fbf28d94b8a8df11a2b2716124e83f82743c31b9bf6132b65ac3885b2f9208e64aa308da04b8d1ca472f5",
|
|
||||||
"index": 41
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x951ad45edfc43cb05d04aebb56f5e52b5fcf14b709c087c0087efad477ddae1f4c489b150d3d781deb99de282b8353a8",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8031766e569cab37a2da1689a30f79085936e4689516f2ec89c0d12a1d598f1f958104973f71a9207ea0749f1e738a5d15b3eee43782e9c333b3f37dc5fb49120c9591895d08c24bc369a934c8c6519dd1c3dca479e2ad568c566db74ee54259",
|
|
||||||
"index": 42
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x95d2117586b873324ce3ec7803aa841f97d5569bf8e711a66d3aa7c2c01d98ccc168e7e9901741eb6d200b4a18682ab8",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x98dd1e201aa923589cfbba8ce73417383204197b3fb66fd57d1d779539fef081f800e43da4cbd73add79effb33a2a49a16976cd5176b11a66dfb95f2e8e183345207f8d538f99a095aa928b33a3b4478ea68045e833f03b7b493dcdbba2047e6",
|
|
||||||
"index": 43
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x9743ccf941e966bf16880485f9157298cc882b376284372014682bb915f03a060ddbdab6721a6b93a2ea45bf395fc691",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x95c75a4c0f6cb6f6adecd771ebe9c3ca8edfe27a7d0cc0a496cf7fec8599225c1d74963aa0f72589d2f1b1654d37608d003e1d793338b877ebcf505f3544212ab20768c4a83dfab9c34cb06591de6c547861d5e23e083aff03506098487683f1",
|
|
||||||
"index": 44
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x98537be1fe74b3ba8cf7579c54d314e7b975d070820c494d684c4fdaf91d32cba1cf110c7edf5f7722b3645ff28b73c8",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xaaf39a8b485d17f301829df7152433b2c0832110e0d583edb9b441fc424e36280dd773e6bbde4bd63e5db6e450feb83414dcbb16f21de8ffdc56d90ecc2cf132de29d9022fdfb3723e75cb1426ac762198bba060b46db7e938379e3f44407f31",
|
|
||||||
"index": 45
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0x9942c15d2dbb78464628140d5cfeccf41cbdf5cb1cd4f0a3696c4085795f2441f1499b2a4779c288126f3729816fc3c2",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb2d23cd010668d15d357996aa36a7f5143f53e1c36074df5d5dbb981a3b101baeb3d283531b5a7120dc8ad106fc7b164074fc9f6eb0945054d22131e801ba77cdea9dd0bfb3cbc33319f26bded059439938487e1f6e6d1716397dfcdd2df86fc",
|
|
||||||
"index": 46
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa0b6aed48910d749025dcf7ff1e814261f4b970f099ca0cb785cd3e21e116a9574565efa57312fdfaab4e2fca8c6056d",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8dda9d1b2912ef08e3277c6d1c5d382847d86d555157d9f7445f9aee7bcdd713469939bb1d9d18a47b6591e08bb6050c17ff836a3a4a5b4a1866b9da9d6dea2feb1e984fd75e89d885ae76ff2d27369d19a0a8b70e50b69aa9f3e8b08663bdea",
|
|
||||||
"index": 47
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa127450d48f95ad33eb34371a8e1bdbfb2eebce168c30409f303be94a93f648d0616b46688a20d8a5f87b9ad47fb6abf",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x9053bfd3e7e8042361c567c7d7d1b6d2594cb66b17f15a74b5426a5800bb515140dfc56310b69b2a87a6c9813bf66e4e107f49830cbbb61ce25f992dbb20a3aadea6f2e5e0d044f245738dabe051bef188578e22eb36314b5a434422e21820bc",
|
|
||||||
"index": 48
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa153ea400b3f723d476cfcdf708939b66431e294b39732419822357e34f078ee0bcaab8d75a70b8c5d34cd55fcc35aeb",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb430cb646dc94c3e4ffd6ba2112e972d4d8efa7acb69af55c8fea9a3671e7ba2df367dc709cc88b2e42dbfa4e47af1640a5b41dc74f0e12d10e9168b3add3cbdd7235356441de1c64de3285dfa7ad0d2142e5c206a2bc6e81ae68cd64236b9ef",
|
|
||||||
"index": 49
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa1ededc1c2b96395d70e27b6a27c04cc760d588848e48dfedbfc4b2cf11606051e8f1056e8067d3e1b18ab1bd781920a",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x835dda96c3483fc7b873c125d8fd1c214f1b3974f630cd5fa46d58037f987246f11a90f808901313e95a7810da89c894056016cbee00d019587c1dbf04d1034e7e0a2094ba9e8b6dad4414deafeb6ffe8ec66256fbc7be282369b7afaf15113d",
|
|
||||||
"index": 50
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa28b5823a440d12d624ee8513b9d93db6c13fc2f078d427fb76fabc199e8027b16d9ea76f278c4e13a1a6bbcafda4d40",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8335142435b436f1929cc481e8adc3f13486a1985ed83b4bfd5e4941e40569a81e8e780e37c043886677a8bcb163671d0a939104e7eebc1c5eeca447f547175ac36a6f45d6754eb2650c01b6331a57cf9b2426b2935f6d05336b4e5c0317323d",
|
|
||||||
"index": 51
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa3073805176d977948a522b459d9e670b382e6f9e9747bc56c398667834b7f7ceea2f388569fdcc87781a8770d123b90",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x89689a56596d9d4355aae536c54c4986480081a604d1501315cb51348a56d6799ba7ab1a0f88afe5a987e2642cec7fea0dddb5b0f02d4627f9d7f1aedff7a74dd21d8818f49f43d26c60b7bb47a82d0b6471f465d1b9cd55c2d764fc0f4f5368",
|
|
||||||
"index": 52
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa38ecb34d118cd0972efe5070d35adb567d9e8331e0ec4a102bc12e13255b64800d99fbe86c58dd1c7e12ffe2b0d20a1",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8a82f3620328c14943ded5e5fad75a20f036867d82acdca9a58ef398ba7d61c9cce36cf60bd4ec30893b5ffd00c03dbb0d8d4c9f6fe36b3f3ccb30fa6ad75790aa5742e9ce01ed3631c8ad86ee70cd276c413684ecae71ade4b6142d233537cd",
|
|
||||||
"index": 53
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa40863ec4cd0efd2f0dd7b5c1047dd84ddbdeb6102d749c6edbd4cdac447b698733193a30f91a03763c888cae3faf7db",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa1556e179fb2053fe7e78c79278a79c66601ace3cf5c282036d69791bceb13d848e1501e63224aee50215e37448bdbf0161fcd5615897df8b1f27d40f0e5556766d6641e786b6feadc237299dc690aad88740307358f42e023d45f599621131d",
|
|
||||||
"index": 54
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa5571b311b0c20042eb1840017ceff5cebceaffe20e9e44760827ad389a2b78aecab27ed4e25a0ab1f435b3abb568216",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x86f18d2fca05bcdf9bd198c89caa78ad8d3512f1efa12155d8afaa435d10f3c0153cb2558d2480176718530e5948757d05e087a68d27c3ab1f4c82bb7a3c81058778a3f68b8126547ccf68eb2681c738237e06569c5168631bf1d19b17724436",
|
|
||||||
"index": 55
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa59fbb1a51e6970f296000fb4eb44e4efc0bda82424aaf24e5deeae137358bc56ffa4c200bb334c0314d80ea0e644622",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x824a925adb5987e1e06825c7c42f8b808e0005bdba47ef2754e0a4e53696221221b797c159f4bda07ff4b9762e8cec7f0be2649dd41afab55a901ab52ba994ece31a029ffaba509d100ca25d30740c406b54f8802a648a0a742f31599dbc046a",
|
|
||||||
"index": 56
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa74321193a4332fd3638ca33d7799e9283b689a463ac4634294baba4777b867d3bb4fc2d35f7c43badc9589aa0a018e2",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x86e74600f98dd93c19730ae6aaf74a5c612327095f0f179f47eaac66c4f32397bad7bea80d6824fbd32552e282847455172928288186d81df7fb5bfca959037d4b82d6be8c353b43027205ce8a7525eaea7847e2d2b6d57c245aeb7775a8fb97",
|
|
||||||
"index": 57
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa75883867c9a3882c7389ae1f7cafc6cb0ad082166ac29b3aa8ff4b0eedb6a53d797f9ad4b185f3c765dffa49d2a9bfc",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb228f0cbd928f22a17a7f6dfb41d3000ba5f615452b26eee31af6802cab9b998fce14f017a37f2d5b6d682153c9585f402356d01ecc83bf2f98001c25a678860751d0ce65e3d0cc138c151dcd7474fbeeb36ca302c59fa145e33750a5fb93e1c",
|
|
||||||
"index": 58
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa75ca5fe00723d5c6fae15ee153670415c3a702607a35c8cc8df3e0b5122c7e76dab1c53443315d9564f0300f6b776dc",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa91d7d5f6a05de9d6f79419cbb544a55748b5dc57868cbd820d9626e9ec00eeb85c3cfec904bafc6a4f736af8b70872d0783e7b456c90aa699d75885172e5a40765dbbda2c96627045e6b63433d54af7b28fcd040e75105fb2cd492d8e9f88f4",
|
|
||||||
"index": 59
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa799b099df114e508278eda664ede2f1f50ffd741e90c1a56691b4b5cb86a0fbcec292162cb15874052486a53a0dffb2",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8022070558ae35ad25e1b76a0d6c807ba7302e9f7245ee3bce25ae153fa21b60eef6e8fbc5781dbcf54aa55051b5690a0388a257dd51c46a7319f207c4e12e32da0b5680fcc59a2b63d400707a17468b6f40992da7b813eb6d5ab68669e85365",
|
|
||||||
"index": 60
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa7bb2ecf7686d2ba17d6a73e42f66c334f73b306af01457024c9f52e136f61196e79122e5f1f295c55b3614e8840cf80",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8d403b7c21f264a67f4c60d28395f00cc0bc7b44d6e8b4bd1ae3a74f5d5cbbb0aedfcb7b18ab418f4cfb405304eba1630455ca0c2e832fb97006cfb9b4107acba869af7c80d326ffa9f5209ca73fb66fb566fa487159d3ebea548fd2f7e6d6c0",
|
|
||||||
"index": 61
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa842143757ba2d36e17dcd22659506b57fd566b6492d2dd7dceba27325ffcc6e477505f714cccc913d394b47e1106c07",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb6aa15a0b4972a52d21752781d5afdf92fc311d66f99bb417cae7c46569d647b8e88c699f2c8d1d23fdb605b7cd2166411a5a161a985add0dbb28711b1a52a24ed0f3d473308b06ef7c1b6d89d6e148da7268db034325369a5567c3fb02e159e",
|
|
||||||
"index": 62
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa971c4a3e9dda0e3b4c81aac43f68d10aae0e975402eec9d399a7d848cb875d49cc712d6cae7e05fa868ff113dd032b7",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa3a1d14eeb2e6aa9a7a1d1f75112b487b38bd55c737c33271a2f9a0423a6a574f2d9bb592f4840bb85d487fe74c1337e1529818ec67642d505b9e2f0a6607386d59ca71941ec3133aff5f0efe791a767c798898ee9543fdb1780ebd15fd4a509",
|
|
||||||
"index": 63
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xa97d60f5b0a4228dc0c79a1997ea589ca247c93c479d4ab4d300bdfc4db34274058ee79422df32bbc8f1af9d1d51f82f",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x9254dc53406d84789dcb9d758efecee2b9a33d424432758d08b526b8ec77501cc0e1e42a8e6389c5893d2f99cd793eb00978a66a5d6025a340c7ba232af3114b946441081ea67f464d905f22b5f6da527e735f23c855534643696a2965e6fef5",
|
|
||||||
"index": 64
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xaa00c77c6547eaa51312d2abd4b3b6f9612e398012fc2ba8bac459414613015a467a3eb1dcfbac885040600f39c42f46",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa3aebbbe74779be3bdfb9d787d779dc7ce29f42604963a65ef3ebf3a9f65ff47378575257719694f2c4b489be663725e06f2e99ad1915a318c2523500a47de786eb3f06a99da3194af894a216965985988c21a8caed2d562a2e380be24c54100",
|
|
||||||
"index": 65
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xab0a5a29c4f330bc7f83e12cd73b74e4311d40a6ef83541ae1e10ed840ef9d702ade6d9d9723374be88a009f170d57ba",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb32c8abb60fab68d477184885ced185686089095b43580840d4e0b77317abcdc1885204fbebc919450bf969974237ffb11be22baf34225598c00af996e24b3b259e9bf01b2f6710d474e54b225c8c39cf6913087f863d1b4d8ad552ccb4b18f7",
|
|
||||||
"index": 66
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xabc5e529fc95673bbf24e9d49d13715ea177eb3a6ac32be0fa5a4f8897cb2cb129e45b6251307804025af8f281dd1d0e",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb02e40d11f71801a44faaf9f5c1037295449aca79be7b549b1969ed0e6443131e8a2e9701f10df5be622b480a90eada6189c35fc6d00af9316c37435ce347d56a66f243f634fcc354b7c8f7d6669494d53978d803bad368018dd719fcc7489ef",
|
|
||||||
"index": 67
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xac71aec361cf57b5213d97dcb3696f9f39e7ab0966f66a8d24c83596207905d3c139d63b256a8c98bccd37143750779e",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa1249cf3b86d6765cbc079485de8df4552a6114fdf70d14b7e7ed81b14344fc03bfa0543ee0c830db8a87e79f5c23d6516aba22715a6e98887e1a9fec0e38c921da0e519fbb51c4c8ef3d3b24b3ab425052e09b060b6a47f7601fe032930be0b",
|
|
||||||
"index": 68
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xaca4842fd1a36418a0dff760c2b4836544fdd5dc8b493c51e9eaa7a774b2a530fa93389f9aaa5dbe0723848852349464",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xa436e2cd3eb6d709d40986a03b95e934a29c578ff45c09e00b87b72bce8add8f8690707ff4a8467ee851aa7ace97b62a137655f9f534db5f2346e61828934831405a83da3af589c42a75ae457001704989d8df31bb1f51b074a708c97a712b5c",
|
|
||||||
"index": 69
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xad8250f33e99bb30f857559dace212d26bb4ebf9fcf010a32c6cfd1b69c13ee11c9b12d88aa5c2bc68e9dace0b7d2a00",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x93b651dbfb5676b6474a5ed7f26bf7febc11323730e04a5186430a9e9bf0bc946fbad99acbe56f09883b80142d6219a0060a3da78aa9813440c9216f582deb0a9866a05997d715eb7769759c4dd0bfacc55aa41787d8d5678a33356d292b9e7a",
|
|
||||||
"index": 70
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xae2f002a928aec5220cabcb5ddba8de29d796054a1c871f034bc88b55e06fec86abbb260453f8c160b48dbe7f991e6de",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8946800e8aa7c6ba6a41cc4061a764a651a1dfbf766b8ae6ac70a73bd78d29f3ba9f823890e6eff9c92183a1005ccdeb0bce44f7d7abe3079711496c5bf6831c1a662717b5f151d148febfd4d14389d9f011304df2ff730664a10058e852e3c2",
|
|
||||||
"index": 71
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xae45eefc1338eac27428be59064b7325d70cd125cc7d540faf341fed5331256cc03e905e557c7e119bf95ab6b4f613dd",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x94e2f6fb7d27cad63408bf15a5ebe21a2dda573e8638bfecaf061c07654e5c29848ea21dc67179c11d72a11041a25b45053b98b43a939873fd71a21c7b6ed995844394d037738c1a52c3224df6268dcb145064197e9e5f72bf36702482f691d6",
|
|
||||||
"index": 72
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb033dcab63a150f1d72e15b21f6bf5fbe6bc9d6ca33a39fbb816b2919fc46b3e755467622b2b1206d98655d594cd772a",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb146df7eb38ffb7dae502f63d867e4090d08f6c27b7ecdfffb08aa9565b0c32562e1b507ed965a8d6ef9cd5602eb90650a8e77191b6d83b844598a07468f9ea220b755dbd0c53c81af091f7dbb2da0101eab116c700c27a40db5af1d977b9d7d",
|
|
||||||
"index": 73
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb1559e72c8b49879592a74895d526b476b1145db07da9531c42f76af7f5f47d10420c9489ea633361cd2ad6704141b24",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb3c1d145409b1ad80f64e5193335474aa0681a817c6fd58af0e971c307366087c4c99923040f41a7f3586bc372e44f020a0dc141755ae934af2b4e769b3d8e12c686492429184432279ec996f8faab610ef92a6bdf44a131b58f8d154119d795",
|
|
||||||
"index": 74
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb34181753bac46a55909379bf384dd00cffabd526d84b9e999ef5b48bb8117290980ba27c34e01158f44285f8718b508",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x82ed1140bc3ddc15701fa89d451066b7622bdc1abdf10a3e32c0f32a8579ae722893915636e233771806fecda1f4bc10076c521a29b93c9a3a1c34f6972ade0d883ffef76afe9fa4cabb97e72019a4e89cbb776f36f906ee252c7742df824a9a",
|
|
||||||
"index": 75
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb399681d63eeff3a1c69807f7a0c0c3bc71b8d9920e9f4a908810466ea37d43a3d033caec35997620e746ecdd96eb916",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb3300a46535ca4d5a4769cc71e5b013c844425e4bf767e357c2102163ea843ff786637c9c12f1fb6ff7f5fad591124130bb837eb06e3d1c7789ad19cc963b841bb721f82939b169ead5a8519ccd7406872b5995471ceb9bacd4183fa5ff8016d",
|
|
||||||
"index": 76
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb50d5cf9948cca4623375f56bcae54de39c5228c0306c123b13c0b8a804b5c759f8b1cd52fb23380783704cb0c6a92cd",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x830ccf4cdcbe6e67a45f2c463a8c7903ea4bdb8bfb4caa14671c078bae4dfb0357303980f41f5564ff80c8cdf38f07070d7d037fff1bd950242b146a22ddd107f7b6acd7933ebf765eb5229ccc40233e6ef95dbf1a7a441a07c1ef4ba76d2f57",
|
|
||||||
"index": 77
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb57b4ff3fd8b5c75b79c6119e9227322faf7ef5b0715176a17f5d579e13cdd85d7e0d532bfa775951ea2b94187bb9480",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x979b209c0a776036629667baf7869e894fa6c775fa736728dddca07ceadda8e53fbca80846979493699f36408439a67905b575cff8ce05b70f7ae79b3d1cb9d49752a2feab99de3f19316200bf94642a3d1523b0b95c2723cfdbf617631c106c",
|
|
||||||
"index": 78
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb61f2a3f949319933e6181c1510fc11dc093c9c6544b502f1e3b5d32f6b7ccb31e7e5cc1f78424226a986735e8adf63f",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb3f041359dbeedccbf19bca0f06d1cd71269cc486388d8a777d579396071dd331d857eee8af69affb1bdfbcd4706effb0ff938d231591079beee08b8ee32d175a9b553ee38f269815c62bd8d08aa25fab5f63dbe7d457618bc926eb794b17c5b",
|
|
||||||
"index": 79
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb68502627b286b9450efa34af553f99559edb4951c463f62e7a2ea8ffd48551709b405ac8f8e5a4efb0169142f26a9fe",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb87aa198b6f063d9c4aef125c628b8ac7d1613847cf74a6ebae68f90c49918226c9470d5a3872c0d53b08de82be440f50127a2491f2c5f8f873b16b84562398c36d7829e2431ac57d31dbdf2ea7d41d5e4eb0f53f10ae503b3d3eaa82d39ba93",
|
|
||||||
"index": 80
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb6bcfced4d00ec09ddf684ea46777adac657efb02bd1d77e67b17aca557fca81d5b90b0fd810c546e21e1d175ff7ea35",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xaee612534ea4ab2f72ee10579a7494138a34dd3428eaf4d636d64196a53c31daef13b208a992982e4f504fd4fe72153d01ad36f2b9321d605f91b77cdaab881b08b0ced0c8639de4394a16da2d279811f864412b36afba303e9e73e27de0eaed",
|
|
||||||
"index": 81
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb6c4bdfa5c7274afd5b7f0f94d337cf28f521ed04e194031279824b64e3f11d8ee97e5dffe7cb98af93f9b327f12369c",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x831a5f689c4653092c2e749ebc980c0f3eaca431284eed4379bf9b65d3b3c2cbead6becc64fb7de6466927dfa62892630b533b741444dcac8b46eadf60ff8f73094be52d953ba151b6fffe995034d91248108969dbab77b0e0764b5a38ec7850",
|
|
||||||
"index": 82
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb7f0c16f9815de4186b1fa4fa15a7e5ed53b841aff9660b98df49bb16ddf668df8b9f1e551ae7b370697d8bc9c252294",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb08e917308673556dfa0a00f3efbce181b40b47bad741e911db649080b5b1439ebf423e7fda1c5fa0450b68a51cf24ec192ab2f4136da85dcb9cfd4faf98fb96eabd8a0206f997acdd7d090db9b44e0b39f07bb9adc10c8d4f6f5ac1f6f0601a",
|
|
||||||
"index": 83
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb65c4489fecc21865fc9c4eb5e657d2b5498a04fae4b4f0c87d4c00268526dc2e743f69e0c1517d7564fb4804cf9cf4a",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0xb8f63cc807899af85373d4b67cd05218abf71fdb5d735c1f2c4060119f9e0bfc4fcfbc319bea54bf5d580dcf20e4909400e6445e6da82ef05e9badc140cab5e2b83ecf98a2f3a71988b599880b10ccf36560a69564af81a063725de235f50956",
|
|
||||||
"index": 84
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"pubkey": "0xb6be1624593603d640144173489b305a52fb939cfa773284822c17a0e6b97e5435043f514d10add206d2b13677babee9",
|
|
||||||
"credentials": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"amount": "0x773594000",
|
|
||||||
"signature": "0x8d81acca3b1caa9cb071f2e8c3ebb2df97329c1980c04fdf14d43ec8c5369960aaf1ef491460f3963c61c02b50b22b0912f2477bb4b49482c546247c3aa35c005aa545cd3dd6b00622c4216e1b269babd8e8dbe02195cb1326e8a7d4069915f1",
|
|
||||||
"index": 85
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"execution_payload_header": {
|
|
||||||
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"feeRecipient": "0x0000000000000000000000000000000000000000",
|
|
||||||
"stateRoot": "0x6baa63317ef13224ccbb368320b6270f08591c452773354384826e7018961c5e",
|
|
||||||
"receiptsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
|
|
||||||
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"prevRandao": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"blockNumber": "0x0",
|
|
||||||
"gasLimit": "0x1c9c380",
|
|
||||||
"gasUsed": "0x0",
|
|
||||||
"timestamp": "0x66606f60",
|
|
||||||
"extraData": "0x",
|
|
||||||
"baseFeePerGas": "0x3b9aca00",
|
|
||||||
"blockHash": "0xa42850da28e09e0e7f75a76fe2b96c8b869a206bfadc9a4450ca345153b0c7d9",
|
|
||||||
"transactionsRoot": "0x7ffe241ea60187fdb0187bfa22de35d1f9bed7ab061d9401fd47e34a54fbede1",
|
|
||||||
"withdrawalsRoot": "0x792930bbd5baac43bcc798ee49aa8185ef76bb3b44ba62b91d86ae569e4bb535",
|
|
||||||
"blobGasUsed": "0x0",
|
|
||||||
"excessBlobGas": "0x0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"runtime": {}
|
|
||||||
},
|
|
||||||
"consensus": {
|
|
||||||
"params": {
|
|
||||||
"block": {
|
|
||||||
"max_bytes": "4194304",
|
|
||||||
"max_gas": "10000000"
|
|
||||||
},
|
|
||||||
"evidence": {
|
|
||||||
"max_age_num_blocks": "100000",
|
|
||||||
"max_age_duration": "172800000000000",
|
|
||||||
"max_bytes": "1048576"
|
|
||||||
},
|
|
||||||
"validator": {
|
|
||||||
"pub_key_types": [
|
|
||||||
"bls12_381"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"version": {
|
|
||||||
"app": "0"
|
|
||||||
},
|
|
||||||
"synchrony": {
|
|
||||||
"precision": "500000000",
|
|
||||||
"message_delay": "2000000000"
|
|
||||||
},
|
|
||||||
"feature": {
|
|
||||||
"vote_extensions_enable_height": "0",
|
|
||||||
"pbts_enable_height": "0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,33 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Define variables
|
|
||||||
CONFIG_DIR="/root/.beacond/config"
|
|
||||||
CONFIG_TOML_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/80084/config.toml"
|
|
||||||
APP_TOML_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/80084/app.toml"
|
|
||||||
SEEDS_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/80084/cl-seeds.txt"
|
|
||||||
|
|
||||||
# Create config directory if it doesn't exist
|
|
||||||
mkdir -p "$CONFIG_DIR"
|
|
||||||
|
|
||||||
# Download the config files
|
|
||||||
curl -sL "$CONFIG_TOML_URL" -o "$CONFIG_DIR/config.toml"
|
|
||||||
curl -sL "$APP_TOML_URL" -o "$CONFIG_DIR/app.toml"
|
|
||||||
|
|
||||||
# Update moniker
|
|
||||||
if [ -n "$MONIKER" ]; then
|
|
||||||
sed -i "s/^moniker = \".*\"/moniker = \"$MONIKER\"/" "$CONFIG_DIR/config.toml"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Fetch and format SEEDS
|
|
||||||
SEEDS=$(curl -s "$SEEDS_URL" | tail -n +2 | tr '\n' ',' | sed 's/,$//')
|
|
||||||
|
|
||||||
# Update seeds and persistent_peers
|
|
||||||
if [ -n "$SEEDS" ]; then
|
|
||||||
sed -i "s/^seeds = \".*\"/seeds = \"$SEEDS\"/" "$CONFIG_DIR/config.toml"
|
|
||||||
sed -i "s/^persistent_peers = \".*\"/persistent_peers = \"$SEEDS\"/" "$CONFIG_DIR/config.toml"
|
|
||||||
fi
|
|
||||||
|
|
||||||
sed -i "s|^rpc-dial-url = \".*\"|rpc-dial-url = \"http://berachain-artio:8551\"|" "$CONFIG_DIR/app.toml";
|
|
||||||
|
|
||||||
|
|
||||||
echo "Configuration updated successfully."
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e # Exit on failure
|
|
||||||
|
|
||||||
echo "MONIKER: $MONIKER"
|
|
||||||
|
|
||||||
CHAIN_SPEC=${CHAIN_SPEC:-testnet}
|
|
||||||
BEACOND=${BEACOND_PATH:-beacond}
|
|
||||||
CONFIG_DIR="/root/.beacond/config"
|
|
||||||
|
|
||||||
# Create config directory
|
|
||||||
mkdir -p "$CONFIG_DIR"
|
|
||||||
|
|
||||||
JWTSECRET="0x$(cat /jwtsecret)" # reth and bepolia don't speak the same language
|
|
||||||
CHAINID=80069
|
|
||||||
P2P_STRING="tcp:\\/\\/0\\.0\\.0\\.0\\:${P2P_PORT:-55696}"
|
|
||||||
|
|
||||||
echo "$JWTSECRET" > "$CONFIG_DIR/jwt.hex"
|
|
||||||
|
|
||||||
# this goes first because it won't overwrite shit
|
|
||||||
#if $BEACOND init ${MONIKER} --chain-id bepolia-beacon-80069 --consensus-key-algo bls12_381 --home /root/.beacond/; then
|
|
||||||
if $BEACOND init ${MONIKER} --chain-id bepolia-beacon-80069 --home /root/.beacond/; then
|
|
||||||
apk add curl
|
|
||||||
|
|
||||||
# Define variables
|
|
||||||
CONFIG_TOML_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/$CHAINID/config.toml"
|
|
||||||
APP_TOML_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/$CHAINID/app.toml"
|
|
||||||
SEEDS_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/$CHAINID/cl-seeds.txt"
|
|
||||||
KZG_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/$CHAINID/kzg-trusted-setup.json"
|
|
||||||
ETH_GENESIS_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/$CHAINID/eth-genesis.json"
|
|
||||||
GENESIS_URL="https://raw.githubusercontent.com/berachain/beacon-kit/main/testing/networks/$CHAINID/genesis.json"
|
|
||||||
|
|
||||||
# Download config files
|
|
||||||
curl -sL "$GENESIS_URL" -o "$CONFIG_DIR/genesis.json"
|
|
||||||
curl -sL "$ETH_GENESIS_URL" -o "$CONFIG_DIR/eth-genesis.json"
|
|
||||||
curl -sL "$KZG_URL" -o "$CONFIG_DIR/kzg-trusted-setup.json"
|
|
||||||
curl -sL "$CONFIG_TOML_URL" -o "$CONFIG_DIR/config.toml"
|
|
||||||
curl -sL "$APP_TOML_URL" -o "$CONFIG_DIR/app.toml"
|
|
||||||
|
|
||||||
# Update moniker if set
|
|
||||||
if [ -n "$MONIKER" ] && [ -f "$CONFIG_DIR/config.toml" ]; then
|
|
||||||
sed -i "s/^moniker = \".*\"/moniker = \"$MONIKER\"/" "$CONFIG_DIR/config.toml"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Fetch and format SEEDS
|
|
||||||
SEEDS=$(curl -s "$SEEDS_URL" | tail -n +2 | tr '\n' ',' | sed 's/,$//')
|
|
||||||
|
|
||||||
# Update seeds and persistent_peers
|
|
||||||
if [ -n "$SEEDS" ] && [ -f "$CONFIG_DIR/config.toml" ]; then
|
|
||||||
sed -i "s/^seeds = \".*\"/seeds = \"$SEEDS\"/" "$CONFIG_DIR/config.toml"
|
|
||||||
sed -i "s/^persistent_peers = \".*\"/persistent_peers = \"$SEEDS\"/" "$CONFIG_DIR/config.toml"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Update RPC dial URL in app.toml
|
|
||||||
if [ -f "$CONFIG_DIR/app.toml" ]; then
|
|
||||||
sed -i "s|^rpc-dial-url = \".*\"|rpc-dial-url = \"http://berachain-bepolia:8551\"|" "$CONFIG_DIR/app.toml"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "Already initialized, continuing!" >&2
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
# apply a port change to the config
|
|
||||||
sed -i "/^\[p2p\]/,/^\[/{s|^laddr = .*|laddr = \"$P2P_STRING\"|}" "$CONFIG_DIR/config.toml"
|
|
||||||
#sed -i "s/^laddr = \".*\"/laddr = \"$P2P_STRING\"/" "$CONFIG_DIR/config.toml"
|
|
||||||
sed -i 's|~/|/root/|g' "$CONFIG_DIR/config.toml"
|
|
||||||
sed -i 's|~/|/root/|g' "$CONFIG_DIR/app.toml"
|
|
||||||
|
|
||||||
echo "$CONFIG_DIR/jwt.hex: $(cat $CONFIG_DIR/jwt.hex)"
|
|
||||||
|
|
||||||
#cd "$CONFIG_DIR"
|
|
||||||
|
|
||||||
# Execute beacond
|
|
||||||
#exec $BEACOND start --beacon-kit.kzg.trusted-setup-path /root/.beacond/config/kzg-trusted-setup.json --minimum-gas-prices 0atom "$@"
|
|
||||||
exec $BEACOND start --home /root/.beacond $@
|
|
||||||
# --beacon-kit.engine.jwt-secret-path $CONFIG_DIR/jwt.hex --beacon-kit.kzg.trusted-setup-path $CONFIG_DIR/kzg-trusted-setup.json --home /root/.beacond
|
|
||||||
#--minimum-gas-prices 0atom
|
|
||||||
@@ -1,107 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
mainnet-besu:
|
|
||||||
build:
|
|
||||||
context: besu
|
|
||||||
args:
|
|
||||||
UPSTREAM_VERSION: ${BESU_VERSION:-24.10.0}
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
- 8551
|
|
||||||
ports:
|
|
||||||
- "7791:7791/tcp"
|
|
||||||
- "7791:7791/udp"
|
|
||||||
volumes:
|
|
||||||
- mainnet-besu-fullnode:/var/lib/besu
|
|
||||||
- .jwtsecret:/jwt.hex
|
|
||||||
command:
|
|
||||||
[
|
|
||||||
"--rpc-ws-host=0.0.0.0",
|
|
||||||
"--rpc-ws-enabled=true",
|
|
||||||
"--rpc-http-host=0.0.0.0",
|
|
||||||
"--rpc-http-enabled=true",
|
|
||||||
"--host-allowlist=*",
|
|
||||||
"--rpc-http-cors-origins=*",
|
|
||||||
"--engine-rpc-port=8551",
|
|
||||||
"--engine-host-allowlist=*",
|
|
||||||
"--engine-jwt-secret=/jwt.hex",
|
|
||||||
"--engine-rpc-enabled=true",
|
|
||||||
"--data-storage-format=BONSAI",
|
|
||||||
"--data-path=/var/lib/besu",
|
|
||||||
"--sync-mode=X_CHECKPOINT",
|
|
||||||
"--rpc-http-max-active-connections=170",
|
|
||||||
"--p2p-port=7791",
|
|
||||||
]
|
|
||||||
restart: unless-stopped
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.mainnet-besu-stripprefix.stripprefix.prefixes=/mainnet-besu"
|
|
||||||
- "traefik.http.services.mainnet-besu.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.mainnet-besu.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.mainnet-besu.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.mainnet-besu.rule=Host(`$DOMAIN`) && PathPrefix(`/mainnet-besu`)"
|
|
||||||
- "traefik.http.routers.mainnet-besu.middlewares=mainnet-besu-stripprefix, ipwhitelist"
|
|
||||||
- "prometheus-scrape.enabled=true"
|
|
||||||
- "prometheus-scrape.port=6060"
|
|
||||||
- "prometheus-scrape.job_name=geth-mainnet-besu"
|
|
||||||
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
|
|
||||||
|
|
||||||
|
|
||||||
lighthouse-mainnet:
|
|
||||||
image: sigp/lighthouse:${LIGHTHOUSE_VERSION:-v5.1.3}-modern
|
|
||||||
restart: unless-stopped
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
ports:
|
|
||||||
- 20506:20506/tcp # p2p
|
|
||||||
- 20506:20506/udp # p2p
|
|
||||||
expose:
|
|
||||||
- 5054 # metrics
|
|
||||||
- 4000 # http
|
|
||||||
- 20506 # p2p
|
|
||||||
volumes:
|
|
||||||
- mainnet_consensus:/data
|
|
||||||
- .jwtsecret:/jwt.hex
|
|
||||||
- /etc/timezone:/etc/timezone:ro
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
command: |
|
|
||||||
lighthouse
|
|
||||||
beacon_node
|
|
||||||
--network=mainnet
|
|
||||||
--disable-upnp
|
|
||||||
--datadir=/data
|
|
||||||
--port=20506
|
|
||||||
--http
|
|
||||||
--http-address=0.0.0.0
|
|
||||||
--http-port=4000
|
|
||||||
--target-peers=50
|
|
||||||
--execution-endpoint=http://mainnet-besu:8551
|
|
||||||
--execution-jwt=/jwt.hex
|
|
||||||
--debug-level=info
|
|
||||||
--validator-monitor-auto
|
|
||||||
--subscribe-all-subnets
|
|
||||||
--import-all-attestations
|
|
||||||
--metrics
|
|
||||||
--metrics-port=5054
|
|
||||||
--metrics-address=0.0.0.0
|
|
||||||
--checkpoint-sync-url=https://beaconstate.info
|
|
||||||
labels:
|
|
||||||
- "prometheus-scrape.enabled=true"
|
|
||||||
- "prometheus-scrape.port=5054"
|
|
||||||
- "prometheus-scrape.job_name=lighthouse-mainnet"
|
|
||||||
- "prometheus-scrape.metrics_path=/metrics"
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.lighthouse-mainnet-stripprefix.stripprefix.prefixes=/lighthouse-mainnet"
|
|
||||||
- "traefik.http.services.lighthouse-mainnet.loadbalancer.server.port=4000"
|
|
||||||
- "traefik.http.routers.lighthouse-mainnet.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.lighthouse-mainnet.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.lighthouse-mainnet.rule=Host(`$DOMAIN`) && PathPrefix(`/lighthouse-mainnet`)"
|
|
||||||
- "traefik.http.routers.lighthouse-mainnet.middlewares=lighthouse-mainnet-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
mainnet-besu-fullnode: {}
|
|
||||||
mainnet_consensus:
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
ARG UPSTREAM_VERSION
|
|
||||||
|
|
||||||
FROM hyperledger/besu:${UPSTREAM_VERSION}
|
|
||||||
|
|
||||||
USER root
|
|
||||||
|
|
||||||
RUN mkdir /var/lib/besu
|
|
||||||
RUN chown -R besu:besu /var/lib/besu
|
|
||||||
|
|
||||||
USER besu
|
|
||||||
|
|
||||||
ENTRYPOINT ["besu"]
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,33 +0,0 @@
|
|||||||
{
|
|
||||||
"genesis": {
|
|
||||||
"l1": {
|
|
||||||
"hash": "0xfcfb8d586bdae763f1189988789211c69eb893a895e7ba48be3ca6289f0941b7",
|
|
||||||
"number": 19300102
|
|
||||||
},
|
|
||||||
"l2": {
|
|
||||||
"hash": "0xb689b35ef29d0bec5816938e0e52683c7257d2e325420ea69b739a2be4754b89",
|
|
||||||
"number": 0
|
|
||||||
},
|
|
||||||
"l2_time": 1708809815,
|
|
||||||
"system_config": {
|
|
||||||
"batcherAddr": "0x415c8893d514f9bc5211d36eeda4183226b84aa7",
|
|
||||||
"overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc",
|
|
||||||
"scalar": "0x00000000000000000000000000000000000000000000000000000000000a6fe0",
|
|
||||||
"gasLimit": 30000000
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"block_time": 2,
|
|
||||||
"max_sequencer_drift": 600,
|
|
||||||
"seq_window_size": 3600,
|
|
||||||
"channel_timeout": 300,
|
|
||||||
"l1_chain_id": 1,
|
|
||||||
"l2_chain_id": 81457,
|
|
||||||
"regolith_time": 0,
|
|
||||||
"canyon_time": 0,
|
|
||||||
"delta_time": 1716843599,
|
|
||||||
"ecotone_time": 1716843599,
|
|
||||||
"batch_inbox_address": "0xff00000000000000000000000000000000081457",
|
|
||||||
"deposit_contract_address": "0x0ec68c5b10f21effb74f2a5c61dfe6b08c0db6cb",
|
|
||||||
"l1_system_config_address": "0x5531dcff39ec1ec727c4c5d2fc49835368f805a9",
|
|
||||||
"protocol_versions_address": "0x0000000000000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,33 +0,0 @@
|
|||||||
{
|
|
||||||
"genesis": {
|
|
||||||
"l1": {
|
|
||||||
"hash": "0x17728cf4d8e0b4f292d2390a869fd7c632d39e72efb00ca3462b4387c6aa2437",
|
|
||||||
"number": 5044255
|
|
||||||
},
|
|
||||||
"l2": {
|
|
||||||
"hash": "0x26a1c0faad7b041f34569a1bb383f00ab74b335883a44bed53e9f41ced5fd906",
|
|
||||||
"number": 0
|
|
||||||
},
|
|
||||||
"l2_time": 1704686688,
|
|
||||||
"system_config": {
|
|
||||||
"batcherAddr": "0xba26fee2fa917443e05e65de8d4350bcd2f59222",
|
|
||||||
"overhead": "0x00000000000000000000000000000000000000000000000000000000000000bc",
|
|
||||||
"scalar": "0x00000000000000000000000000000000000000000000000000000000000a6fe0",
|
|
||||||
"gasLimit": 30000000
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"block_time": 2,
|
|
||||||
"max_sequencer_drift": 600,
|
|
||||||
"seq_window_size": 3600,
|
|
||||||
"channel_timeout": 300,
|
|
||||||
"l1_chain_id": 11155111,
|
|
||||||
"l2_chain_id": 168587773,
|
|
||||||
"regolith_time": 0,
|
|
||||||
"canyon_time": 0,
|
|
||||||
"delta_time": 1713999600,
|
|
||||||
"ecotone_time": 1713999600,
|
|
||||||
"batch_inbox_address": "0x1c3b85a2108784eab6a4bf56cdd6f722e415b331",
|
|
||||||
"deposit_contract_address": "0x2757e4430e694f27b73ec9c02257cab3a498c8c5",
|
|
||||||
"l1_system_config_address": "0x329faf078c364a316e08bf6a17b7eee6ae75a613",
|
|
||||||
"protocol_versions_address": "0x0000000000000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
@@ -1,85 +0,0 @@
|
|||||||
services:
|
|
||||||
|
|
||||||
blast-archive:
|
|
||||||
image: blastio/blast-geth:mainnet-v1.1.1
|
|
||||||
volumes:
|
|
||||||
- ${BLAST_MAINNET_GETH_ARCHIVE_DATA:-blast-mainnet-geth-archive}:/data
|
|
||||||
- ./blast-io:/config:rw
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
environment:
|
|
||||||
- "GETH_ROLLUP_SEQUENCERHTTP=https://sequencer.blast.io"
|
|
||||||
- "GETH_GCMODE=archive"
|
|
||||||
- "GETH_SYNCMODE=full"
|
|
||||||
- "GETH_NODISCOVER=true"
|
|
||||||
- "GETH_DATADIR=/data"
|
|
||||||
- "GETH_HTTP=true"
|
|
||||||
- "GETH_HTTP_ADDR=0.0.0.0"
|
|
||||||
- "GETH_HTTP_PORT=9545"
|
|
||||||
- "GETH_HTTP_VHOSTS=*"
|
|
||||||
- "GETH_HTTP_CORSDOMAIN=*"
|
|
||||||
- "GETH_HTTP_API=web3,debug,eth,txpool,net,engine"
|
|
||||||
- "GETH_WS_PORT=9545"
|
|
||||||
- "GETH_WS_ADDR=0.0.0.0"
|
|
||||||
- "GETH_WS_ORIGINS=*"
|
|
||||||
- "GETH_WS=true"
|
|
||||||
- "GETH_AUTHRPC_VHOSTS=*"
|
|
||||||
- "GETH_AUTHRPC_ADDR=0.0.0.0"
|
|
||||||
- "GETH_AUTHRPC_JWTSECRET=/jwtsecret"
|
|
||||||
- "GETH_LIGHT_MAXPEERS=0"
|
|
||||||
- "GETH_MAXPEERS=0"
|
|
||||||
- "GETH_OVERRIDE_CANYON=0"
|
|
||||||
- "GETH_OVERRIDE_DELTA=1716843599"
|
|
||||||
- "GETH_OVERRIDE_ECOTONE=1716843599"
|
|
||||||
expose:
|
|
||||||
- 9545
|
|
||||||
- 8551
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 30s
|
|
||||||
entrypoint: /bin/sh
|
|
||||||
command: -c "[ ! -d /data/geth ] && /usr/local/bin/geth init /config/mainnet/genesis.json || /usr/local/bin/geth --rollup.disabletxpoolgossip=true"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.blast-mainnet-geth-archive-stripprefix.stripprefix.prefixes=/blast-mainnet-archive"
|
|
||||||
- "traefik.http.services.blast-mainnet-geth-archive.loadbalancer.server.port=9545"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.blast-mainnet-geth-archive.entrypoints=websecure}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.blast-mainnet-geth-archive.tls.certresolver=myresolver}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.blast-mainnet-geth-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/blast-mainnet-archive`)}"
|
|
||||||
- "${NO_SSL:+traefik.http.routers.blast-mainnet-geth-archive.rule=PathPrefix(`/blast-mainnet-archive`)}"
|
|
||||||
- "traefik.http.routers.blast-mainnet-geth-archive.middlewares=blast-mainnet-geth-archive-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
blast-archive-node:
|
|
||||||
image: blastio/blast-optimism:mainnet-v1.1.1
|
|
||||||
volumes:
|
|
||||||
- ./blast-io:/config
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
ports:
|
|
||||||
- "25037:25037"
|
|
||||||
- "25037:25037/udp"
|
|
||||||
environment:
|
|
||||||
- "OP_NODE_P2P_BOOTNODES=enr:-J64QGwHl9uYLfC_cnmxSA6wQH811nkOWJDWjzxqkEUlJoZHWvI66u-BXgVcPCeMUmg0dBpFQAPotFchG67FHJMZ9OSGAY3d6wevgmlkgnY0gmlwhANizeSHb3BzdGFja4Sx_AQAiXNlY3AyNTZrMaECg4pk0cskPAyJ7pOmo9E6RqGBwV-Lex4VS9a3MQvu7PWDdGNwgnZhg3VkcIJ2YQ,enr:-J64QDge2jYBQtcNEpRqmKfci5E5BHAhNBjgv4WSdwH1_wPqbueq2bDj38-TSW8asjy5lJj1Xftui6Or8lnaYFCqCI-GAY3d6wf3gmlkgnY0gmlwhCO2D9yHb3BzdGFja4Sx_AQAiXNlY3AyNTZrMaEDo4aCTq7pCEN8om9U5n_VyWdambGnQhwHNwKc8o-OicaDdGNwgnZhg3VkcIJ2YQ"
|
|
||||||
- "OP_NODE_L1_RPC_RATE_LIMIT=0"
|
|
||||||
- "OP_NODE_L1_RPC_MAX_BATCH_SIZE=20"
|
|
||||||
- "OP_NODE_L1_RPC_KIND=${BLAST_L1_ETHEREUM_MAINNET_EXECUTION_KIND:-basic}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=${BLAST_L1_ETHEREUM_MAINNET_EXECUTION_TRUST:-false}"
|
|
||||||
- "OP_NODE_L1_ETH_RPC=${BLAST_L1_ETHEREUM_MAINNET_EXECUTION_RPC}"
|
|
||||||
- "OP_NODE_L1_BEACON=${BLAST_L1_ETHEREUM_MAINNET_BEACON_REST}"
|
|
||||||
- "OP_NODE_L1_BEACON_ARCHIVER=${BLAST_MAINNET_L1_ETHEREUM_MAINNET_BEACON_ARCHIVER}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=true"
|
|
||||||
- "OP_NODE_L2_ENGINE_RPC=http://blast-archive:8551"
|
|
||||||
- "OP_NODE_L2_ENGINE_AUTH=/jwtsecret"
|
|
||||||
- "OP_NODE_L2_SKIP_SYNC_START_CHECK=true"
|
|
||||||
- "OP_NODE_P2P_LISTEN_TCP_PORT=25037"
|
|
||||||
- "OP_NODE_ROLLUP_CONFIG=/config/mainnet/rollup.json"
|
|
||||||
- "OP_NODE_OVERRIDE_DELTA=1716843599"
|
|
||||||
- "OP_NODE_OVERRIDE_ECOTONE=1716843599"
|
|
||||||
command: >
|
|
||||||
op-node
|
|
||||||
depends_on:
|
|
||||||
- blast-archive
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
blast-mainnet-geth-archive:
|
|
||||||
1
blast-mainnet-geth-archive.yml
Symbolic link
1
blast-mainnet-geth-archive.yml
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
op/geth/blast-mainnet-op-geth-archive-leveldb-hash.yml
|
||||||
@@ -26,7 +26,7 @@ services:
|
|||||||
DATA_TRANSPORT_LAYER__SERVER_HOSTNAME: '0.0.0.0'
|
DATA_TRANSPORT_LAYER__SERVER_HOSTNAME: '0.0.0.0'
|
||||||
volumes:
|
volumes:
|
||||||
- ./boba/bnb:/opt/optimism/packages/data-transport-layer/state-dumps/
|
- ./boba/bnb:/opt/optimism/packages/data-transport-layer/state-dumps/
|
||||||
- ${BOBA_BNB_MAINNET_L2GETH_ARCHIVE__DTL_DATA:-boba-bnb-l2geth-archive_dtl}:/db
|
- ${BOBA_BNB_MAINNET_L2GETH_ARCHIVE__DTL_DATA:-boba-bnb-mainnet-l2geth-archive_dtl}:/db
|
||||||
networks:
|
networks:
|
||||||
- chains
|
- chains
|
||||||
|
|
||||||
@@ -37,7 +37,7 @@ services:
|
|||||||
entrypoint: sh ./geth.sh
|
entrypoint: sh ./geth.sh
|
||||||
stop_grace_period: 5m
|
stop_grace_period: 5m
|
||||||
volumes:
|
volumes:
|
||||||
- ${BOBA_BNB_MAINNET_L2GETH_ARCHIVE__CLIENT_DATA:-boba-bnb-mainnet-l2geth-archive_client}:/root/.ethereum/
|
- ${BOBA_BNB_MAINNET_L2GETH_ARCHIVE__CLIENT_DATA:-boba-bnb-mainnet-l2geth-archive}:/root/.ethereum/
|
||||||
environment:
|
environment:
|
||||||
GETH_ALLOW_INSECURE_UNLOCK: 'true'
|
GETH_ALLOW_INSECURE_UNLOCK: 'true'
|
||||||
# ETH1_HTTP: 'https://bsc-dataseed.binance.org'
|
# ETH1_HTTP: 'https://bsc-dataseed.binance.org'
|
||||||
@@ -124,5 +124,5 @@ services:
|
|||||||
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
boba-bnb-mainnet-l2geth-archive_client:
|
boba-bnb-mainnet-l2geth-archive:
|
||||||
boba-bnb-mainnet-l2geth-archive_dtl:
|
boba-bnb-mainnet-l2geth-archive_dtl:
|
||||||
|
|||||||
@@ -1,87 +0,0 @@
|
|||||||
# The erigon db can be downloaded from
|
|
||||||
# https://boba-db.s3.us-east-2.amazonaws.com/mainnet/boba-mainnet-erigon-db-1149019.tgz
|
|
||||||
# and extracted to the DATA_DIR
|
|
||||||
|
|
||||||
# The jwt-secret.txt file should be a random string of32 characters and should be kept secret.
|
|
||||||
|
|
||||||
# The p2p-node-key.txt is the private key used for the node to identify itself.
|
|
||||||
|
|
||||||
# The discovery and peerstore directories are used to store the peerstore and discovery data.
|
|
||||||
|
|
||||||
# boba is part of the superchain registry and knows it's overrides
|
|
||||||
|
|
||||||
services:
|
|
||||||
boba-eth-erigon:
|
|
||||||
image: us-docker.pkg.dev/boba-392114/bobanetwork-tools-artifacts/images/op-erigon:${BOBAETH_ERIGON_VERSION:-v1.2.11}
|
|
||||||
user: root
|
|
||||||
command: |
|
|
||||||
--datadir=/db
|
|
||||||
--port=29910
|
|
||||||
--nat=stun
|
|
||||||
--chain=boba-mainnet
|
|
||||||
--http.addr=0.0.0.0
|
|
||||||
--http.port=9545
|
|
||||||
--http.compression=true
|
|
||||||
--ws.port=9545
|
|
||||||
--ws.compression=true
|
|
||||||
--ws
|
|
||||||
--http.corsdomain=*
|
|
||||||
--http.vhosts=*
|
|
||||||
--authrpc.addr=0.0.0.0
|
|
||||||
--authrpc.port=8551
|
|
||||||
--authrpc.vhosts=*
|
|
||||||
--authrpc.jwtsecret=/jwtsecret
|
|
||||||
--http.api=eth,debug,net,engine,web3
|
|
||||||
--txpool.gossip.disable=true
|
|
||||||
--rollup.sequencerhttp=https://mainnet.boba.network
|
|
||||||
--db.size.limit=8TB
|
|
||||||
ports:
|
|
||||||
- "29910:29910"
|
|
||||||
- "29910:29910/udp"
|
|
||||||
expose:
|
|
||||||
- 9545
|
|
||||||
- 8551
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
- ${BOBA_ETH_MAINNET_ERIGON_ARCHIVE_TRACE_DATA:-boba-eth-mainnet-erigon-archive-trace}:/db
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.boba-eth-mainnet-erigon-archive-trace-stripprefix.stripprefix.prefixes=/boba-eth-erigon"
|
|
||||||
- "traefik.http.services.boba-eth-mainnet-erigon-archive-trace.loadbalancer.server.port=9545"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.entrypoints=websecure}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.tls.certresolver=myresolver}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/boba-eth-erigon`)}"
|
|
||||||
- "${NO_SSL:+traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.rule=PathPrefix(`/boba-eth-erigon`)}"
|
|
||||||
- "traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.middlewares=boba-eth-mainnet-erigon-archive-trace-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
boba-eth-erigon-node:
|
|
||||||
depends_on:
|
|
||||||
- boba-eth-erigon
|
|
||||||
image: us-docker.pkg.dev/boba-392114/bobanetwork-tools-artifacts/images/op-node:${BOBAETH_NODE_VERSION:-v1.6.16-rc.1}
|
|
||||||
command: >
|
|
||||||
op-node
|
|
||||||
--l2=http://boba-eth-erigon:8551
|
|
||||||
--l2.jwt-secret=/jwtsecret
|
|
||||||
--network=boba-mainnet
|
|
||||||
--rpc.addr=0.0.0.0
|
|
||||||
--rpc.port=8545
|
|
||||||
environment:
|
|
||||||
- "OP_NODE_P2P_LISTEN_TCP_PORT=45202"
|
|
||||||
- "OP_NODE_L1_RPC_KIND=${BOBA_ETH_L1_ETHEREUM_MAINNET_EXECUTION_KIND:-basic}"
|
|
||||||
- "OP_NODE_L1_TRUST_RPC=${BOBA_ETH_L1_ETHEREUM_MAINNET_EXECUTION_TRUST:-false}"
|
|
||||||
- "OP_NODE_L1_BEACON=${BOBA_ETH_L1_ETHEREUM_MAINNET_BEACON_REST}"
|
|
||||||
- "OP_NODE_L1_BEACON_ARCHIVER=${BOBA_ETH_L1_ETHEREUM_MAINNET_BEACON_ARCHIVER}"
|
|
||||||
- "OP_NODE_L1_ETH_RPC=${BOBA_ETH_L1_ETHEREUM_MAINNET_EXECUTION_RPC}"
|
|
||||||
ports:
|
|
||||||
- "45202:45202"
|
|
||||||
- "45202:45202/udp"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
restart: always
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
boba-eth-mainnet-erigon-archive-trace:
|
|
||||||
1
boba-eth-mainnet-erigon-archive-trace.yml
Symbolic link
1
boba-eth-mainnet-erigon-archive-trace.yml
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
op/erigon/boba-mainnet-op-erigon-archive-trace.yml
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
mkdir -p /harmony/harmony_db_0 /harmony/harmony_db_1 /harmony/harmony_db_2 /harmony/harmony_db_3 /harmony/log /harmony/.hmy
|
|
||||||
|
|
||||||
cat<<-EOF > rclone.conf
|
|
||||||
[release]
|
|
||||||
type = s3
|
|
||||||
provider = AWS
|
|
||||||
env_auth = false
|
|
||||||
region = us-west-1
|
|
||||||
acl = public-read
|
|
||||||
server_side_encryption = AES256
|
|
||||||
storage_class = REDUCED_REDUNDANCY
|
|
||||||
EOF
|
|
||||||
|
|
||||||
if [ ! -f /harmony/setupdone ]
|
|
||||||
then
|
|
||||||
# https://docs.harmony.one/home/network/validators/node-setup/syncing-db#2.-configuring-rclone
|
|
||||||
rclone --config=rclone.conf -P -L sync release:pub.harmony.one/mainnet.min/harmony_db_0 /harmony/harmony_db_0 --multi-thread-streams 4 --transfers=8
|
|
||||||
rclone --config=rclone.conf -P -L sync release:pub.harmony.one/mainnet.min/harmony_db_1 /harmony/harmony_db_1 --multi-thread-streams 4 --transfers=8
|
|
||||||
touch /harmony/setupdone
|
|
||||||
fi
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
services:
|
|
||||||
bsc-archive-forwarder:
|
|
||||||
restart: unless-stopped
|
|
||||||
image: nginx
|
|
||||||
expose:
|
|
||||||
- 80
|
|
||||||
environment:
|
|
||||||
TARGET_URL: ${BSC_ARCHIVE_FORWARDER_URL}
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
volumes:
|
|
||||||
- ./nginx-forwarder:/etc/nginx/templates
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.bsc-archive-forwarder-stripprefix.stripprefix.prefixes=/bsc-archive-forwarder"
|
|
||||||
- "traefik.http.services.bsc-archive-forwarder.loadbalancer.server.port=80"
|
|
||||||
- "traefik.http.routers.bsc-archive-forwarder.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.bsc-archive-forwarder.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.bsc-archive-forwarder.rule=Host(`$DOMAIN`) && PathPrefix(`/bsc-archive-forwarder`)"
|
|
||||||
- "traefik.http.routers.bsc-archive-forwarder.middlewares=bsc-archive-forwarder-stripprefix, ipwhitelist"
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
bsc-erigon-fullnode:
|
|
||||||
image: chainstack/bsc-erigon:1.2.12
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- "bsc-erigon-fullnode:/datadir"
|
|
||||||
- "/slowdisk:/slowdisk"
|
|
||||||
ports:
|
|
||||||
- "54993:54993"
|
|
||||||
- "54993:54993/udp"
|
|
||||||
- "25703:25703"
|
|
||||||
- "25703:25703/udp"
|
|
||||||
restart: unless-stopped
|
|
||||||
command: erigon --db.pagesize=16k --chain=bsc --prune=hrtc --http --http.addr=0.0.0.0 --http.port=8545 --http.compression --http.vhosts='*' --http.corsdomain='*' --http.api=eth,debug,net,web3,erigon --ws --ws.compression --rpc.gascap=300000000 --metrics --metrics.addr=0.0.0.0 --metrics.port=6060 --bodies.cache=5G --rpc.batch.limit=200000 --batchSize=2048MB --port=54993 --p2p.protocol=66 --datadir=/datadir --ethash.dagdir=/datadir/ethash --rpc.returndata.limit=1100000 --torrent.port=25703 --torrent.download.rate=80mb --nat=stun
|
|
||||||
|
|
||||||
stop_grace_period: 1m
|
|
||||||
labels:
|
|
||||||
- "prometheus-scrape.enabled=true"
|
|
||||||
- "prometheus-scrape.port=6060"
|
|
||||||
- "prometheus-scrape.job_name=erigon"
|
|
||||||
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.bsc-erigon-fullnode-stripprefix.stripprefix.prefixes=/bsc-erigon-fullnode"
|
|
||||||
- "traefik.http.services.bsc-erigon-fullnode.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.bsc-erigon-fullnode.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.bsc-erigon-fullnode.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.bsc-erigon-fullnode.rule=Host(`$DOMAIN`) && PathPrefix(`/bsc-erigon-fullnode`)"
|
|
||||||
- "traefik.http.routers.bsc-erigon-fullnode.middlewares=bsc-erigon-fullnode-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
bsc-erigon-fullnode:
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
bsc-erigon:
|
|
||||||
image: chainstack/bsc-erigon:1.2.12
|
|
||||||
user: root
|
|
||||||
volumes:
|
|
||||||
- "${BSC_ERIGON_DATA:-bsc-erigon}:/datadir"
|
|
||||||
- "/slowdisk:/slowdisk"
|
|
||||||
ports:
|
|
||||||
- "28056:28056"
|
|
||||||
- "28056:28056/udp"
|
|
||||||
- "62912:62912"
|
|
||||||
- "62912:62912/udp"
|
|
||||||
restart: unless-stopped
|
|
||||||
command: erigon --db.pagesize=16k --chain=bsc --sentry.drop-useless-peers --http --http.addr=0.0.0.0 --http.port=8545 --http.compression --http.vhosts='*' --http.corsdomain='*' --http.api=eth,debug,net,web3,erigon,admin --ws --ws.compression --rpc.gascap=300000000 --metrics --metrics.addr=0.0.0.0 --metrics.port=6060 --bodies.cache=5G --rpc.batch.limit=200000 --batchSize=2048MB --port=28056 --p2p.protocol=66 --datadir=/datadir --ethash.dagdir=/datadir/ethash --rpc.returndata.limit=1100000 --torrent.port=62912 --torrent.download.rate=80mb --nat=extip:${IP}
|
|
||||||
|
|
||||||
stop_grace_period: 1m
|
|
||||||
labels:
|
|
||||||
- "prometheus-scrape.enabled=true"
|
|
||||||
- "prometheus-scrape.port=6060"
|
|
||||||
- "prometheus-scrape.job_name=erigon"
|
|
||||||
- "prometheus-scrape.metrics_path=/debug/metrics/prometheus"
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.bsc-erigon-stripprefix.stripprefix.prefixes=/bsc-erigon"
|
|
||||||
- "traefik.http.services.bsc-erigon.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.bsc-erigon.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.bsc-erigon.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.bsc-erigon.rule=Host(`$DOMAIN`) && PathPrefix(`/bsc-erigon`)"
|
|
||||||
- "traefik.http.routers.bsc-erigon.middlewares=bsc-erigon-stripprefix, ipwhitelist"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
bsc-erigon:
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
|
|
||||||
bsc-testnet:
|
|
||||||
image: ghcr.io/bnb-chain/bsc:${BSC_VERSION:-1.5.7}
|
|
||||||
user: root
|
|
||||||
ports:
|
|
||||||
- "17474:17474"
|
|
||||||
- "17474:17474/udp"
|
|
||||||
expose:
|
|
||||||
- "8545"
|
|
||||||
- "8546"
|
|
||||||
- "17474"
|
|
||||||
volumes:
|
|
||||||
- bsc-testnet:/bsc/.ethereum
|
|
||||||
- ./bsc-testnet/config:/bsc/config
|
|
||||||
entrypoint: geth
|
|
||||||
command: --config=/bsc/config/config.toml --ws.origins='*' --history.transactions=0 --state.scheme=path --syncmode=full --db.engine=pebble --rpc.gascap=600000000 --nat=extip:${IP}
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 3m
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.bsc-testnet-stripprefix.stripprefix.prefixes=/bsc-testnet"
|
|
||||||
- "traefik.http.services.bsc-testnet.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.bsc-testnet.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.bsc-testnet.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.bsc-testnet.rule=Host(`$DOMAIN`) && PathPrefix(`/bsc-testnet`)"
|
|
||||||
- "traefik.http.routers.bsc-testnet.middlewares=bsc-testnet-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
bsc-testnet:
|
|
||||||
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
[Eth]
|
|
||||||
NetworkId = 97
|
|
||||||
|
|
||||||
[Eth.Miner]
|
|
||||||
GasCeil = 140000000
|
|
||||||
GasPrice = 1000000000
|
|
||||||
Recommit = 10000000000
|
|
||||||
|
|
||||||
[Eth.TxPool]
|
|
||||||
Locals = []
|
|
||||||
NoLocals = true
|
|
||||||
Journal = "transactions.rlp"
|
|
||||||
Rejournal = 3600000000000
|
|
||||||
PriceLimit = 1000000000
|
|
||||||
PriceBump = 10
|
|
||||||
AccountSlots = 16
|
|
||||||
GlobalSlots = 4096
|
|
||||||
AccountQueue = 64
|
|
||||||
GlobalQueue = 1024
|
|
||||||
Lifetime = 10800000000000
|
|
||||||
|
|
||||||
[Eth.GPO]
|
|
||||||
Blocks = 20
|
|
||||||
Percentile = 60
|
|
||||||
OracleThreshold = 1000
|
|
||||||
|
|
||||||
[Node]
|
|
||||||
IPCPath = "geth.ipc"
|
|
||||||
HTTPHost = "0.0.0.0"
|
|
||||||
InsecureUnlockAllowed = false
|
|
||||||
HTTPPort = 8545
|
|
||||||
HTTPVirtualHosts = ["*"]
|
|
||||||
HTTPModules = ["admin", "eth", "net", "web3", "txpool", "parlia"]
|
|
||||||
WSHost = "0.0.0.0"
|
|
||||||
WSPort = 8545
|
|
||||||
WSModules = ["net", "web3", "eth"]
|
|
||||||
|
|
||||||
[Node.P2P]
|
|
||||||
MaxPeers = 50
|
|
||||||
NoDiscovery = false
|
|
||||||
TrustedNodes = []
|
|
||||||
StaticNodes = [
|
|
||||||
"enode://0637d1e62026e0c8685b1db0ca1c767c78c95c3fab64abc468d1a64b12ca4b530b46b8f80c915aec96f74f7ffc5999e8ad6d1484476f420f0c10e3d42361914b@52.199.214.252:30311",
|
|
||||||
"enode://df1e8eb59e42cad3c4551b2a53e31a7e55a2fdde1287babd1e94b0836550b489ba16c40932e4dacb16cba346bd442c432265a299c4aca63ee7bb0f832b9f45eb@52.51.80.128:30311",
|
|
||||||
"enode://dbcc5ec23bdf89243688321e8cfa8d80e17edce093206bcc6df998d8148385767cae3058a1c1e20c93c3b8e07962bc7a321deab0aa46c106283f1220f12c220a@3.209.122.123:30311",
|
|
||||||
"enode://665cf77ca26a8421cfe61a52ac312958308d4912e78ce8e0f61d6902e4494d4cc38f9b0dd1b23a427a7a5734e27e5d9729231426b06bb9c73b56a142f83f6b68@52.72.123.113:30311"
|
|
||||||
]
|
|
||||||
|
|
||||||
File diff suppressed because one or more lines are too long
20
bsc.cfg
20
bsc.cfg
@@ -1,20 +0,0 @@
|
|||||||
- id: ${ID}
|
|
||||||
chain: ${CHAIN}
|
|
||||||
labels:
|
|
||||||
provider: ${PROVIDER}
|
|
||||||
extra_gas_limit: 600000000
|
|
||||||
method-groups:
|
|
||||||
enabled:
|
|
||||||
- debug
|
|
||||||
- filter
|
|
||||||
methods:
|
|
||||||
enabled:
|
|
||||||
- name: txpool_content
|
|
||||||
connection:
|
|
||||||
generic:
|
|
||||||
rpc:
|
|
||||||
url: "${RPC_URL}"
|
|
||||||
ws:
|
|
||||||
frameSize: 20Mb
|
|
||||||
msgSize: 50Mb
|
|
||||||
url: "${WS_URL}"
|
|
||||||
35
bsc.yml
35
bsc.yml
@@ -1,35 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
|
|
||||||
bsc:
|
|
||||||
image: ghcr.io/bnb-chain/bsc:${BSC_VERSION:-1.5.7}
|
|
||||||
user: root
|
|
||||||
ports:
|
|
||||||
- "29061:29061"
|
|
||||||
- "29061:29061/udp"
|
|
||||||
expose:
|
|
||||||
- "8545"
|
|
||||||
- "29061"
|
|
||||||
volumes:
|
|
||||||
- bsc:/bsc/.ethereum
|
|
||||||
- ./bsc/config:/bsc/config
|
|
||||||
- /slowdisk:/slowdisk
|
|
||||||
entrypoint: geth
|
|
||||||
command: --config=/bsc/config/config.toml --ws.origins='*' --history.transactions=0 --state.scheme=path --syncmode=full --db.engine=pebble --rpc.gascap=600000000 --nat=extip:${IP}
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 3m
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.bsc-stripprefix.stripprefix.prefixes=/bsc"
|
|
||||||
- "traefik.http.services.bsc.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.bsc.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.bsc.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.bsc.rule=Host(`$DOMAIN`) && PathPrefix(`/bsc`)"
|
|
||||||
- "traefik.http.routers.bsc.middlewares=bsc-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
bsc:
|
|
||||||
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
[Eth]
|
|
||||||
NetworkId = 56
|
|
||||||
LightPeers = 100
|
|
||||||
TrieTimeout = 150000000000
|
|
||||||
|
|
||||||
[Eth.Miner]
|
|
||||||
GasCeil = 140000000
|
|
||||||
GasPrice = 1000000000
|
|
||||||
Recommit = 10000000000
|
|
||||||
|
|
||||||
[Eth.TxPool]
|
|
||||||
Locals = []
|
|
||||||
NoLocals = true
|
|
||||||
Journal = "transactions.rlp"
|
|
||||||
Rejournal = 3600000000000
|
|
||||||
PriceLimit = 1000000000
|
|
||||||
PriceBump = 10
|
|
||||||
AccountSlots = 200
|
|
||||||
GlobalSlots = 8000
|
|
||||||
AccountQueue = 200
|
|
||||||
GlobalQueue = 4000
|
|
||||||
|
|
||||||
[Eth.GPO]
|
|
||||||
Blocks = 20
|
|
||||||
Percentile = 60
|
|
||||||
OracleThreshold = 1000
|
|
||||||
|
|
||||||
[Node]
|
|
||||||
IPCPath = "geth.ipc"
|
|
||||||
HTTPHost = "0.0.0.0"
|
|
||||||
InsecureUnlockAllowed = false
|
|
||||||
HTTPPort = 8545
|
|
||||||
HTTPVirtualHosts = ["*"]
|
|
||||||
HTTPModules = ["eth", "net", "web3", "txpool", "parlia", "debug", "admin"]
|
|
||||||
WSHost = "0.0.0.0"
|
|
||||||
WSPort = 8545
|
|
||||||
WSModules = ["net", "web3", "eth", "debug"]
|
|
||||||
|
|
||||||
[Node.P2P]
|
|
||||||
MaxPeers = 200
|
|
||||||
NoDiscovery = false
|
|
||||||
StaticNodes = []
|
|
||||||
ListenAddr = ":29061"
|
|
||||||
EnableMsgEvents = false
|
|
||||||
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,115 +0,0 @@
|
|||||||
services:
|
|
||||||
celo-mainnet:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-geth:celo-v2.0.0
|
|
||||||
volumes:
|
|
||||||
- "celo-mainnet-op-geth-pruned-leveldb-hash:/datadir"
|
|
||||||
- ".jwtsecret:/jwtsecret"
|
|
||||||
- "./celo/mainnet/:/chainconfig"
|
|
||||||
ports:
|
|
||||||
- "10955:10955"
|
|
||||||
- "10955:10955/udp"
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
- 8546
|
|
||||||
- 8551
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 5m
|
|
||||||
environment:
|
|
||||||
- NETWORK_NAME=mainnet
|
|
||||||
#- GETH_BOOTNODES=enode://ac0f42fa46f8cc10bd02a103894d71d495537465133e7c442bc02dc76721a5f41761cc2d8c69e7ba1b33e14e28f516436864d3e0836e2dcdaf032387f72447dd@34.83.164.192:30303,enode://596002969b8b269a4fa34b4709b9600b64201e7d02e2f5f1350affd021b0cbda6ce2b913ebe24f0fb1edcf66b6c730a8a3b02cd940f4de995f73d3b290a0fc92@34.82.177.77:30303,enode://3619455064ef1ce667171bba1df80cfd4c097f018cf0205aaad496f0d509611b7c40396893d9e490ee390cd098888279e177a4d9bb09c58387bb0a6031d237f1@34.19.90.27:30303,enode://e3c54db6004a92d4ee87504f073f3234a25759b485274cc224037e3e5ee792f3b482c3f4fffcb764af6e1859a1aea9710b71e1991e32c1dee7f40352124bb182@35.233.249.87:30303,enode://674410b34fd54c8406a4f945292b96111688d4bab49aecdc34b4f1b346891f4673dcb03ed44c38ab467ef7bec0b20f6031ad88aa1d35ce1333b343d00fa19fb1@34.168.43.76:30303
|
|
||||||
command: >
|
|
||||||
--datadir=/datadir
|
|
||||||
--http
|
|
||||||
--http.corsdomain="*"
|
|
||||||
--http.vhosts="*"
|
|
||||||
--http.addr=0.0.0.0
|
|
||||||
--http.port=8545
|
|
||||||
--http.api=web3,debug,eth,txpool,net,engine
|
|
||||||
--ws
|
|
||||||
--ws.addr=0.0.0.0
|
|
||||||
--ws.port=8545
|
|
||||||
--ws.origins="*"
|
|
||||||
--ws.api=debug,eth,txpool,net,engine,web3
|
|
||||||
--syncmode="full"
|
|
||||||
--gcmode="full"
|
|
||||||
--authrpc.vhosts="*"
|
|
||||||
--authrpc.addr=0.0.0.0
|
|
||||||
--authrpc.port=8551
|
|
||||||
--authrpc.jwtsecret=/jwtsecret
|
|
||||||
--rollup.sequencerhttp=https://sequencer.forno.celo.org
|
|
||||||
--rollup.disabletxpoolgossip=true
|
|
||||||
--port="10955"
|
|
||||||
--discovery.port="10955"
|
|
||||||
--snapshot=true
|
|
||||||
--verbosity=3
|
|
||||||
--history.transactions=0
|
|
||||||
--rollup.historicalrpc=${OP_GETH_HISTORICAL_RPC:-https://sequencer.alfajores.celo-testnet.org}
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.op-celo-alfajores-stripprefix.stripprefix.prefixes=/op-celo-alfajores"
|
|
||||||
- "traefik.http.services.op-celo-alfajores.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.op-celo-alfajores.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.op-celo-alfajores.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.op-celo-alfajores.rule=Host(`$DOMAIN`) && PathPrefix(`/op-celo-alfajores`)"
|
|
||||||
- "traefik.http.routers.op-celo-alfajores.middlewares=op-celo-alfajores-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
celo-mainnet-node:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-node:celo-v2.0.0
|
|
||||||
depends_on:
|
|
||||||
- celo-mainnet
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC
|
|
||||||
- 63509 # P2P TCP
|
|
||||||
- 63509/udp # P2P UDP
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
ports:
|
|
||||||
- "63509:63509"
|
|
||||||
- "63509:63509/udp"
|
|
||||||
environment:
|
|
||||||
- HEALTHCHECK__REFERENCE_RPC_PROVIDER=https://forno.celo.org
|
|
||||||
- OP_NODE_P2P_LISTEN_TCP_PORT=63509
|
|
||||||
- OP_NODE_P2P_LISTEN_UDP_PORT=63509
|
|
||||||
#- OP_NODE_P2P_STATIC=/ip4/35.197.25.52/tcp/9222/p2p/16Uiu2HAmQEdyLRSAVZDr5SqbJ1RnKmNDhtQJcEKmemrVxe4FxKwR,/ip4/34.105.22.4/tcp/9222/p2p/16Uiu2HAm1SZBDSugT5MMu7vBY8auDgfZFNhoDeXPLc9Me5FsAxwT,/ip4/34.83.209.168/tcp/9222/p2p/16Uiu2HAmGJAiUX6HLSo4nLh8T984qxzokwL23cVsYuNZy2SrK7C6,/ip4/34.83.214.149/tcp/9222/p2p/16Uiu2HAmAko2Kr3eAjM7tnshtEhYrxQYfKUvN2kwiygeFoBAoi8S,/ip4/34.169.5.52/tcp/9222/p2p/16Uiu2HAmKc6YKHzYgsjBDaj36uAufxpgZFgrzDqVBt6zTPwdhhJD
|
|
||||||
- OP_NODE_ALTDA_ENABLED=true
|
|
||||||
- OP_NODE_ALTDA_DA_SERVICE=true
|
|
||||||
- OP_NODE_ALTDA_VERIFY_ON_READ=false
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER=https://eigenda-proxy.forno.celo.org
|
|
||||||
- OP_NODE_L2_ENGINE_AUTH=/jwtsecret
|
|
||||||
command: >
|
|
||||||
op-node
|
|
||||||
--l1="${OP_CELO_ETHEREUM_MAINNET_RPC:-https://eth.llamarpc.com}"
|
|
||||||
--l2=http://celo-mainnet:8551
|
|
||||||
--rpc.addr=0.0.0.0
|
|
||||||
--rpc.port=9545
|
|
||||||
--l1.trustrpc
|
|
||||||
--l1.rpckind=basic
|
|
||||||
--l1.beacon="${OP_CELO_ALFAJORES_HOLESKY_BEACON_REST:-https://ethereum-mainnet-beacon-api.publicnode.com}"
|
|
||||||
--syncmode=execution-layer
|
|
||||||
--p2p.priv.path=/chainconfigs/p2p_node_key_txt
|
|
||||||
--rollup.config=/chainconfigs/rollup.json
|
|
||||||
--rollup.load-protocol-versions=true
|
|
||||||
--rollup.halt=major
|
|
||||||
restart: always
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
- ./celo/alfajores/:/chainconfigs/
|
|
||||||
stop_grace_period: 30s
|
|
||||||
|
|
||||||
op-celo-alfajores-key-generator:
|
|
||||||
image: ghcr.io/foundry-rs/foundry
|
|
||||||
volumes:
|
|
||||||
- "./celo/mainnet:/config"
|
|
||||||
entrypoint: sh
|
|
||||||
command: "[ -f /config/p2p_node_key_txt ] && exit 0 || cast w n | grep -i 'Private Key' | awk -F ': ' '{print $2}' | sed 's/0x//' > /config/p2p_node_key_txt"
|
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo-mainnet-op-geth-pruned-leveldb-hash::
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
version: '3.1'
|
|
||||||
|
|
||||||
services:
|
|
||||||
celo-archive:
|
|
||||||
image: us.gcr.io/celo-org/geth:1.8
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 1m
|
|
||||||
command: |
|
|
||||||
--verbosity 3
|
|
||||||
--syncmode full
|
|
||||||
--gcmode archive
|
|
||||||
--txlookuplimit=0
|
|
||||||
--cache.preimages
|
|
||||||
--port 58395
|
|
||||||
--ws
|
|
||||||
--ws.port 8545
|
|
||||||
--ws.addr 0.0.0.0
|
|
||||||
--http
|
|
||||||
--http.vhosts=*
|
|
||||||
--http.addr 0.0.0.0
|
|
||||||
--http.api eth,net,web3,debug,admin,personal
|
|
||||||
--datadir /root/.celo
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
- 8546
|
|
||||||
ports:
|
|
||||||
- '58395:58395/tcp' # p2p
|
|
||||||
- '58395:58395/udp' # p2p
|
|
||||||
volumes:
|
|
||||||
- ${CELO_ARCHIVE_DATA:-celo-archive}:/root/.celo
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-stripprefix.stripprefix.prefixes=/celo-archive"
|
|
||||||
- "traefik.http.services.celo.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.celo.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.celo.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.celo.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-archive`)"
|
|
||||||
- "traefik.http.routers.celo.middlewares=celo-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo-archive:
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
services:
|
|
||||||
celo-mainnet-geth:
|
|
||||||
image: us.gcr.io/celo-org/geth:1.8.9
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 3m
|
|
||||||
command: |
|
|
||||||
--verbosity 3
|
|
||||||
--syncmode full
|
|
||||||
--gcmode full
|
|
||||||
--cache.preimages
|
|
||||||
--port 20748
|
|
||||||
--ws
|
|
||||||
--ws.port 8545
|
|
||||||
--ws.addr 0.0.0.0
|
|
||||||
--ws.origins=*
|
|
||||||
--http
|
|
||||||
--http.vhosts=*
|
|
||||||
--http.addr 0.0.0.0
|
|
||||||
--http.api eth,net,web3,debug,admin,personal
|
|
||||||
--datadir /root/.celo
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
volumes:
|
|
||||||
- celo:/root/.celo
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-stripprefix.stripprefix.prefixes=/celo-mainnet-geth"
|
|
||||||
- "traefik.http.services.celo.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.celo.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.celo.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.celo.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-mainnet-geth`)"
|
|
||||||
- "traefik.http.routers.celo.middlewares=celo-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo:
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
services:
|
|
||||||
celo-mainnet-geth-archive:
|
|
||||||
image: us.gcr.io/celo-org/geth:1.8.9
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 1m
|
|
||||||
command: >
|
|
||||||
--verbosity 3
|
|
||||||
--syncmode full
|
|
||||||
--gcmode archive
|
|
||||||
--txlookuplimit=0
|
|
||||||
--cache.preimages
|
|
||||||
--port 58395
|
|
||||||
--ws
|
|
||||||
--ws.port 8545
|
|
||||||
--ws.addr 0.0.0.0
|
|
||||||
--http
|
|
||||||
--http.vhosts=*
|
|
||||||
--http.addr 0.0.0.0
|
|
||||||
--http.api eth,net,web3,debug,admin,personal
|
|
||||||
--datadir /root/.celo
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
ports:
|
|
||||||
- '58395:58395/tcp' # p2p
|
|
||||||
- '58395:58395/udp' # p2p
|
|
||||||
volumes:
|
|
||||||
- ${CELO_MAINNET_GETH_ARCHIVE_DATA:-celo-mainnet-geth-archive}:/root/.celo
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-mainnet-geth-archive-stripprefix.stripprefix.prefixes=/celo-mainnet-geth-archive"
|
|
||||||
- "traefik.http.services.celo-mainnet-geth-archive.loadbalancer.server.port=8545"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.celo-mainnet-geth-archive.entrypoints=websecure}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.celo-mainnet-geth-archive.tls.certresolver=myresolver}"
|
|
||||||
- "${NO_SSL:-traefik.http.routers.celo-mainnet-geth-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-mainnet-geth-archive`)}"
|
|
||||||
- "${NO_SSL:+traefik.http.routers.celo-mainnet-geth-archive.rule=PathPrefix(`/celo-mainnet-geth-archive`)}"
|
|
||||||
- "traefik.http.routers.celo-mainnet-geth-archive.middlewares=celo-mainnet-geth-archive-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo-mainnet-geth-archive:
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,140 +0,0 @@
|
|||||||
services:
|
|
||||||
celo-mainnet:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-geth:celo-v2.0.0
|
|
||||||
volumes:
|
|
||||||
- "celo-mainnet-op-geth-pruned-leveldb-hash:/datadir"
|
|
||||||
- ".jwtsecret:/shared/jwt.txt"
|
|
||||||
- "./celo/mainnet/:/chainconfig"
|
|
||||||
- "./celo/scripts/:/scripts"
|
|
||||||
ports:
|
|
||||||
- "10955:10955"
|
|
||||||
- "10955:10955/udp"
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
- 8546
|
|
||||||
- 8551
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 5m
|
|
||||||
entrypoint: /scripts/start-op-geth.sh
|
|
||||||
environment:
|
|
||||||
- NETWORK_NAME=mainnet
|
|
||||||
- GETH_BOOTNODES=enode://28f4fcb7f38c1b012087f7aef25dcb0a1257ccf1cdc4caa88584dc25416129069b514908c8cead5d0105cb0041dd65cd4ee185ae0d379a586fb07b1447e9de38@34.169.39.223:30303,enode://a9077c3e030206954c5c7f22cc16a32cb5013112aa8985e3575fadda7884a508384e1e63c077b7d9fcb4a15c716465d8585567f047c564ada2e823145591e444@34.169.212.31:30303,enode://029b007a7a56acbaa8ea50ec62cda279484bf3843fae1646f690566f784aca50e7d732a9a0530f0541e5ed82ba9bf2a4e21b9021559c5b8b527b91c9c7a38579@34.82.139.199:30303,enode://f3c96b73a5772c5efb48d5a33bf193e58080d826ba7f03e9d5bdef20c0634a4f83475add92ab6313b7a24aa4f729689efb36f5093e5d527bb25e823f8a377224@34.82.84.247:30303,enode://daa5ad65d16bcb0967cf478d9f20544bf1b6de617634e452dff7b947279f41f408b548261d62483f2034d237f61cbcf92a83fc992dbae884156f28ce68533205@34.168.45.168:30303,enode://c79d596d77268387e599695d23e941c14c220745052ea6642a71ef7df31a13874cb7f2ce2ecf5a8a458cfc9b5d9219ce3e8bc6e5c279656177579605a5533c4f@35.247.32.229:30303,enode://4151336075dd08eb6c75bfd63855e8a4bd6fd0f91ae4a81b14930f2671e16aee55495c139380c16e1094a49691875e69e40a3a5e2b4960c7859e7eb5745f9387@35.205.149.224:30303,enode://ab999db751265c714b171344de1972ed74348162de465a0444f56e50b8cfd048725b213ba1fe48c15e3dfb0638e685ea9a21b8447a54eb2962c6768f43018e5c@34.79.3.199:30303,enode://9d86d92fb38a429330546fe1aefce264e1f55c5d40249b63153e7df744005fa3c1e2da295e307041fd30ab1c618715f362c932c28715bc20bed7ae4fc76dea81@34.77.144.164:30303,enode://c82c31f21dd5bbb8dc35686ff67a4353382b4017c9ec7660a383ccb5b8e3b04c6d7aefe71203e550382f6f892795728570f8190afd885efcb7b78fa398608699@34.76.202.74:30303,enode://3bad5f57ad8de6541f02e36d806b87e7e9ca6d533c956e89a56b3054ae85d608784f2cd948dc685f7d6bbd5a2f6dd1a23cc03e529ea370dd72d880864a2af6a3@104.199.93.87:30303,enode://1decf3b8b9a0d0b8332d15218f3bf0ceb9606b0efe18f352c51effc14bbf1f4f3f46711e1d460230cb361302ceaad2be48b5b187ad946e50d729b34e463268d2@35.240.26.148:30303
|
|
||||||
- BEDROCK_DATADIR=/datadir
|
|
||||||
- OP_GETH__SYNCMODE=full
|
|
||||||
- NODE_TYPE=full
|
|
||||||
- BEDROCK_SEQUENCER_HTTP=https://sequencer.forno.celo.org
|
|
||||||
- PORT__OP_GETH_P2P=10955
|
|
||||||
- IS_CUSTOM_CHAIN=true
|
|
||||||
- OP_GETH__HISTORICAL_RPC=http://celo-mainnet-geth:8545
|
|
||||||
# command: >
|
|
||||||
# --datadir=/datadir
|
|
||||||
# --http
|
|
||||||
# --http.corsdomain="*"
|
|
||||||
# --http.vhosts="*"
|
|
||||||
# --http.addr=0.0.0.0
|
|
||||||
# --http.port=8545
|
|
||||||
# --http.api=web3,debug,eth,txpool,net,engine
|
|
||||||
# --ws
|
|
||||||
# --ws.addr=0.0.0.0
|
|
||||||
# --ws.port=8545
|
|
||||||
# --ws.origins="*"
|
|
||||||
# --ws.api=debug,eth,txpool,net,engine,web3
|
|
||||||
# --syncmode="full"
|
|
||||||
# --gcmode="full"
|
|
||||||
# --authrpc.vhosts="*"
|
|
||||||
# --authrpc.addr=0.0.0.0
|
|
||||||
# --authrpc.port=8551
|
|
||||||
# --authrpc.jwtsecret=/jwtsecret
|
|
||||||
# --rollup.sequencerhttp=https://sequencer.forno.celo.org
|
|
||||||
# --rollup.disabletxpoolgossip=true
|
|
||||||
# --port="10955"
|
|
||||||
# --discovery.port="10955"
|
|
||||||
# --snapshot=true
|
|
||||||
# --verbosity=3
|
|
||||||
# --history.transactions=0
|
|
||||||
# --rollup.historicalrpc=${CELO_HISTORICAL_MAINNET_RPC:-http://celo-mainnet-geth:8545}
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-mainnet-op-geth-pruned-leveldb-hash-stripprefix.stripprefix.prefixes=/celo-mainnet"
|
|
||||||
- "traefik.http.services.celo-mainnet-op-geth-pruned-leveldb-hash.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-pruned-leveldb-hash.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-pruned-leveldb-hash.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-pruned-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-mainnet`)"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-pruned-leveldb-hash.middlewares=celo-mainnet-op-geth-pruned-leveldb-hash-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
celo-mainnet-node:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-node:celo-v2.0.0
|
|
||||||
depends_on:
|
|
||||||
- celo-mainnet
|
|
||||||
expose:
|
|
||||||
- 8545 # RPC
|
|
||||||
- 63509 # P2P TCP
|
|
||||||
- 63509/udp # P2P UDP
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
ports:
|
|
||||||
- "63509:63509"
|
|
||||||
- "63509:63509/udp"
|
|
||||||
environment:
|
|
||||||
- HEALTHCHECK__REFERENCE_RPC_PROVIDER=https://forno.celo.org
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER="http://celo-mainnet-eigenda-proxy:4242"
|
|
||||||
- OP_NODE_P2P_LISTEN_TCP_PORT=63509
|
|
||||||
- OP_NODE_P2P_LISTEN_UDP_PORT=63509
|
|
||||||
- OP_NODE_P2P_STATIC=/ip4/34.83.180.111/tcp/9222/p2p/16Uiu2HAkxBYxPd4eDFJzwm84XPzymkXud847vu65eju4UCDRpDSM,/ip4/34.169.135.64/tcp/9222/p2p/16Uiu2HAm6oVW1YeKheAuhnJSySnVvbXZ5gXL4g36XrWb1imF9K3m,/ip4/34.169.201.36/tcp/9222/p2p/16Uiu2HAmCqAFUoq72tjGJfCkkzHoNbjTjshjEED4kWtRKMSxcMgb,/ip4/34.83.127.51/tcp/9222/p2p/16Uiu2HAmBqKBoxkk95CsZiXQmQHv9WMiHXU4Di6wzFuYEKo1i7dg,/ip4/35.227.175.30/tcp/9222/p2p/16Uiu2HAmTNVkin4vogHsqwJwShUkHtx48aDoxygGwgp9Tv5zQWTM,/ip4/34.82.198.98/tcp/9222/p2p/16Uiu2HAmS6CeFPUXMztLf4VDh9NLbauuXLSYx9YkXfyiscqoxsKt,/ip4/34.38.181.223/tcp/9222/p2p/16Uiu2HAmH3xfYGjaJDw6sxa8ds3bVwMYLZRpPzpTtTrYq7G4nZs3,/ip4/34.76.38.6/tcp/9222/p2p/16Uiu2HAm6yXZ9oRTSJfZzXe8wXJ165X3pfzAKdLB9sa27eRZgTwD,/ip4/35.187.106.54/tcp/9222/p2p/16Uiu2HAmPFucuARxzAqtXcD3evFoutKh7tSmfQCxwPKUXfkoyaqY,/ip4/34.76.16.183/tcp/9222/p2p/16Uiu2HAmS8NybNYedzHf4nuFfqyCDH9xiMpgMWxctMtau8dTUxeP,/ip4/104.199.39.59/tcp/9222/p2p/16Uiu2HAmGfwjf1XPikWYDN4NFpTBuuvs6C7eF2iyyKvvjK2MGrVM,/ip4/34.140.117.79/tcp/9222/p2p/16Uiu2HAkwSVN7WHohhoE1sh932y2q3Pv7AFiSugM8K6iFZLALq66
|
|
||||||
- OP_NODE_ALTDA_ENABLED=true
|
|
||||||
- OP_NODE_ALTDA_DA_SERVICE=true
|
|
||||||
- OP_NODE_ALTDA_VERIFY_ON_READ=false
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER=https://eigenda-proxy.forno.celo.org
|
|
||||||
- OP_NODE_L2_ENGINE_AUTH=/jwtsecret
|
|
||||||
command: >
|
|
||||||
op-node
|
|
||||||
--l1="${CELO_L1_ETHEREUM_MAINNET_EXECUTION_RPC:-https://ethereum-rpc.publicnode.com}"
|
|
||||||
--l2=http://celo-mainnet:8551
|
|
||||||
--rpc.addr=0.0.0.0
|
|
||||||
--rpc.port=9545
|
|
||||||
--l1.trustrpc
|
|
||||||
--l1.rpckind=basic
|
|
||||||
--l1.beacon="${CELO_L1_ETHEREUM_MAINNET_BEACON_REST:-https://ethereum-beacon-api.publicnode.com}"
|
|
||||||
--syncmode=execution-layer
|
|
||||||
--p2p.priv.path=/chainconfigs/p2p_node_key_txt
|
|
||||||
--rollup.config=/chainconfigs/rollup.json
|
|
||||||
--rollup.load-protocol-versions=true
|
|
||||||
--rollup.halt=major
|
|
||||||
restart: always
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret
|
|
||||||
- ./celo/mainnet/:/chainconfigs/
|
|
||||||
stop_grace_period: 30s
|
|
||||||
|
|
||||||
celo-mainnet-eigenda-proxy:
|
|
||||||
platform: linux/amd64
|
|
||||||
image: ghcr.io/layr-labs/eigenda-proxy:v1.6.4
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 5m
|
|
||||||
entrypoint: /scripts/start-eigenda-proxy.sh
|
|
||||||
environment:
|
|
||||||
- EIGENDA_LOCAL_DISPERSER_RPC=disperser.eigenda.xyz:443
|
|
||||||
- EIGENDA_LOCAL_SVC_MANAGER_ADDR=0x870679e138bcdf293b7ff14dd44b70fc97e12fc0
|
|
||||||
- OP_NODE__RPC_ENDPOINT=${CELO_L1_ETHEREUM_MAINNET_EXECUTION_RPC:-https://ethereum-rpc.publicnode.com}
|
|
||||||
volumes:
|
|
||||||
- celo-mainnet-op-geth-pruned-leveldb-hash_eigenda:/data
|
|
||||||
- ./celo/scripts:/scripts
|
|
||||||
|
|
||||||
celo-mainnet-key-generator:
|
|
||||||
image: ghcr.io/foundry-rs/foundry
|
|
||||||
volumes:
|
|
||||||
- "./celo/mainnet:/config"
|
|
||||||
entrypoint: sh
|
|
||||||
command: "[ -f /config/p2p_node_key_txt ] && exit 0 || cast w n | grep -i 'Private Key' | awk -F ': ' '{print $2}' | sed 's/0x//' > /config/p2p_node_key_txt"
|
|
||||||
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo-mainnet-op-geth-pruned-leveldb-hash:
|
|
||||||
celo-mainnet-op-geth-pruned-leveldb-hash_eigenda:
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
version: "3.1"
|
|
||||||
services:
|
|
||||||
celo-proxy:
|
|
||||||
image: stakesquid/eth-cluster@sha256:537f9207d3894732c946244b464c4482fb0661f2b3ac1daffb1f549a64a49d79
|
|
||||||
environment:
|
|
||||||
- FULLNODE_WS_URL=${CELO_PROXY_FULLNODE_WS}
|
|
||||||
- FULLNODE_RPC_URL=${CELO_PROXY_FULLNODE_RPC}
|
|
||||||
- ARCHIVE_RPC_URL=${CELO_PROXY_ARCHIVE_RPC}
|
|
||||||
expose:
|
|
||||||
- "8545"
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-proxy-stripprefix.stripprefix.prefixes=$CELO_PROXY_PREFIX"
|
|
||||||
- "traefik.http.services.celo-proxy.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.celo-proxy.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.celo-proxy.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.celo-proxy.rule=Host(`$CELO_PROXY_DOMAIN`) && PathPrefix(`$CELO_PROXY_PREFIX`)"
|
|
||||||
- "traefik.http.routers.celo-proxy.middlewares=celo-proxy-stripprefix, ipwhitelist"
|
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,48 +0,0 @@
|
|||||||
{
|
|
||||||
"genesis": {
|
|
||||||
"l1": {
|
|
||||||
"hash": "0x64728368a04f067bc2abe78c1de17f3711b054c4f3e979955fd8482af85e86db",
|
|
||||||
"number": 2411247
|
|
||||||
},
|
|
||||||
"l2": {
|
|
||||||
"hash": "0xe96cb39b59ebe02553e47424e7f57dbfbffca905c3ff350765985289754a00a3",
|
|
||||||
"number": 26384000
|
|
||||||
},
|
|
||||||
"l2_time": 1727337408,
|
|
||||||
"system_config": {
|
|
||||||
"batcherAddr": "0x6f9cc6bfe1a0b446a36453d150905bbd6a4784e0",
|
|
||||||
"overhead": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"scalar": "0x00000000000000000000000000000000000000000000000000000000000f4240",
|
|
||||||
"gasLimit": 30000000
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"block_time": 1,
|
|
||||||
"max_sequencer_drift": 1800,
|
|
||||||
"seq_window_size": 3600,
|
|
||||||
"channel_timeout": 300,
|
|
||||||
"l1_chain_id": 17000,
|
|
||||||
"l2_chain_id": 44787,
|
|
||||||
"regolith_time": 0,
|
|
||||||
"cel2_time": 0,
|
|
||||||
"canyon_time": 0,
|
|
||||||
"delta_time": 0,
|
|
||||||
"ecotone_time": 0,
|
|
||||||
"fjord_time": 0,
|
|
||||||
"granite_time": 0,
|
|
||||||
"batch_inbox_address": "0xfff0000000000000000000000000000000044787",
|
|
||||||
"deposit_contract_address": "0x82527353927d8d069b3b452904c942da149ba381",
|
|
||||||
"l1_system_config_address": "0x499b0c1f4bdc76d61b1d13b03384eac65faf50c7",
|
|
||||||
"protocol_versions_address": "0x0000000000000000000000000000000000000000",
|
|
||||||
"alt_da": {
|
|
||||||
"da_challenge_contract_address": "0x0000000000000000000000000000000000000000",
|
|
||||||
"da_commitment_type": "GenericCommitment",
|
|
||||||
"da_challenge_window": 1,
|
|
||||||
"da_resolve_window": 1
|
|
||||||
},
|
|
||||||
"chain_op_config": {
|
|
||||||
"eip1559Elasticity": 5,
|
|
||||||
"eip1559Denominator": 400,
|
|
||||||
"eip1559DenominatorCanyon": 400
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
100
celo/geth/celo-alfajores-geth-archive-leveldb-hash.yml
Normal file
100
celo/geth/celo-alfajores-geth-archive-leveldb-hash.yml
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
# use at your own risk
|
||||||
|
|
||||||
|
services:
|
||||||
|
celo-alfajores-archive:
|
||||||
|
image: ${CELO_GETH_IMAGE:-us.gcr.io/celo-org/geth}:${CELO_ALFAJORES_GETH_VERSION:-1.8.9}
|
||||||
|
user: root
|
||||||
|
ulimits:
|
||||||
|
nofile: 1048576 # Max open files (for RPC/WS connections)
|
||||||
|
sysctls:
|
||||||
|
# TCP Performance
|
||||||
|
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
|
||||||
|
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
|
||||||
|
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
|
||||||
|
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
|
||||||
|
net.core.somaxconn: 32768 # Higher connection queue
|
||||||
|
# Memory/Connection Management
|
||||||
|
net.core.netdev_max_backlog: 50000 # Increase network buffer
|
||||||
|
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
|
||||||
|
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
|
||||||
|
expose:
|
||||||
|
- 8545
|
||||||
|
- 8551
|
||||||
|
|
||||||
|
ports:
|
||||||
|
- 10386:10386
|
||||||
|
- 10386:10386/udp
|
||||||
|
volumes:
|
||||||
|
- ${CELO_ALFAJORES_GETH_ARCHIVE_LEVELDB_HASH_DATA:-celo-alfajores-geth-archive-leveldb-hash}:/root/.celo
|
||||||
|
- /slowdisk:/slowdisk
|
||||||
|
|
||||||
|
command:
|
||||||
|
- --datadir=/root/.celo
|
||||||
|
- --port=10386
|
||||||
|
- --bind=0.0.0.0
|
||||||
|
- --nat=extip:${IP}
|
||||||
|
- --http
|
||||||
|
- --http.port=8545
|
||||||
|
- --http.vhosts=*
|
||||||
|
- --ws
|
||||||
|
- --ws.port=8545
|
||||||
|
- --ws.origins=*
|
||||||
|
- --ws.addr=0.0.0.0
|
||||||
|
- --http.addr=0.0.0.0
|
||||||
|
- --maxpeers=50
|
||||||
|
- --http.api=eth,net,web3,debug,admin,txpool
|
||||||
|
- --ws.api=eth,net,web3,debug,admin,txpool
|
||||||
|
|
||||||
|
- --rpc.gascap=600000000
|
||||||
|
- --rpc.returndatalimit=10000000
|
||||||
|
- --rpc.txfeecap=0
|
||||||
|
|
||||||
|
- --db.engine=leveldb
|
||||||
|
- --state.scheme=hash
|
||||||
|
- --syncmode=full
|
||||||
|
- --gcmode=archive
|
||||||
|
|
||||||
|
networks:
|
||||||
|
- chains
|
||||||
|
restart: unless-stopped
|
||||||
|
stop_grace_period: 5m
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.middlewares.celo-alfajores-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/celo-alfajores-archive
|
||||||
|
- traefik.http.services.celo-alfajores-geth-archive-leveldb-hash.loadbalancer.server.port=8545
|
||||||
|
- ${NO_SSL:-traefik.http.routers.celo-alfajores-geth-archive-leveldb-hash.entrypoints=websecure}
|
||||||
|
- ${NO_SSL:-traefik.http.routers.celo-alfajores-geth-archive-leveldb-hash.tls.certresolver=myresolver}
|
||||||
|
- ${NO_SSL:-traefik.http.routers.celo-alfajores-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-alfajores-archive`)}
|
||||||
|
- ${NO_SSL:+traefik.http.routers.celo-alfajores-geth-archive-leveldb-hash.rule=PathPrefix(`/celo-alfajores-archive`)}
|
||||||
|
- traefik.http.routers.celo-alfajores-geth-archive-leveldb-hash.middlewares=celo-alfajores-geth-archive-leveldb-hash-stripprefix, ipwhitelist
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
celo-alfajores-geth-archive-leveldb-hash:
|
||||||
|
celo-alfajores-geth-archive-leveldb-hash_prysm:
|
||||||
|
|
||||||
|
x-upstreams:
|
||||||
|
- chain: celo-alfajores
|
||||||
|
method-groups:
|
||||||
|
enabled:
|
||||||
|
- debug
|
||||||
|
- filter
|
||||||
|
|
||||||
|
methods:
|
||||||
|
disabled:
|
||||||
|
enabled:
|
||||||
|
# standard geth only
|
||||||
|
- name: debug_getRawBlock
|
||||||
|
- name: debug_getRawTransaction
|
||||||
|
- name: debug_getRawReceipts
|
||||||
|
- name: debug_getRawHeader
|
||||||
|
- name: debug_getBadBlocks
|
||||||
|
# non standard geth only slightly dangerous
|
||||||
|
- name: debug_intermediateRoots
|
||||||
|
- name: debug_dumpBlock
|
||||||
|
# standard geth and erigon
|
||||||
|
- name: debug_accountRange
|
||||||
|
- name: debug_getModifiedAccountsByNumber
|
||||||
|
- name: debug_getModifiedAccountsByHash
|
||||||
|
# non standard geth and erigon
|
||||||
|
- name: eth_getRawTransactionByHash
|
||||||
|
- name: eth_getRawTransactionByBlockHashAndIndex
|
||||||
100
celo/geth/celo-mainnet-geth-archive-leveldb-hash.yml
Normal file
100
celo/geth/celo-mainnet-geth-archive-leveldb-hash.yml
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
# use at your own risk
|
||||||
|
|
||||||
|
services:
|
||||||
|
celo-mainnet-archive:
|
||||||
|
image: ${CELO_GETH_IMAGE:-us.gcr.io/celo-org/geth}:${CELO_MAINNET_GETH_VERSION:-1.8.9}
|
||||||
|
user: root
|
||||||
|
ulimits:
|
||||||
|
nofile: 1048576 # Max open files (for RPC/WS connections)
|
||||||
|
sysctls:
|
||||||
|
# TCP Performance
|
||||||
|
net.ipv4.tcp_slow_start_after_idle: 0 # Disable slow start after idle
|
||||||
|
net.ipv4.tcp_no_metrics_save: 1 # Disable metrics cache
|
||||||
|
net.ipv4.tcp_rmem: 4096 87380 16777216 # Increase TCP read buffers
|
||||||
|
net.ipv4.tcp_wmem: 4096 87380 16777216 # Increase TCP write buffers
|
||||||
|
net.core.somaxconn: 32768 # Higher connection queue
|
||||||
|
# Memory/Connection Management
|
||||||
|
net.core.netdev_max_backlog: 50000 # Increase network buffer
|
||||||
|
net.ipv4.tcp_max_syn_backlog: 30000 # More SYN requests
|
||||||
|
net.ipv4.tcp_max_tw_buckets: 2000000 # Allow more TIME_WAIT sockets
|
||||||
|
expose:
|
||||||
|
- 8545
|
||||||
|
- 8551
|
||||||
|
|
||||||
|
ports:
|
||||||
|
- 10164:10164
|
||||||
|
- 10164:10164/udp
|
||||||
|
volumes:
|
||||||
|
- ${CELO_MAINNET_GETH_ARCHIVE_LEVELDB_HASH_DATA:-celo-mainnet-geth-archive-leveldb-hash}:/root/.celo
|
||||||
|
- /slowdisk:/slowdisk
|
||||||
|
|
||||||
|
command:
|
||||||
|
- --datadir=/root/.celo
|
||||||
|
- --port=10164
|
||||||
|
- --bind=0.0.0.0
|
||||||
|
- --nat=extip:${IP}
|
||||||
|
- --http
|
||||||
|
- --http.port=8545
|
||||||
|
- --http.vhosts=*
|
||||||
|
- --ws
|
||||||
|
- --ws.port=8545
|
||||||
|
- --ws.origins=*
|
||||||
|
- --ws.addr=0.0.0.0
|
||||||
|
- --http.addr=0.0.0.0
|
||||||
|
- --maxpeers=50
|
||||||
|
- --http.api=eth,net,web3,debug,admin,txpool
|
||||||
|
- --ws.api=eth,net,web3,debug,admin,txpool
|
||||||
|
|
||||||
|
- --rpc.gascap=600000000
|
||||||
|
- --rpc.returndatalimit=10000000
|
||||||
|
- --rpc.txfeecap=0
|
||||||
|
|
||||||
|
- --db.engine=leveldb
|
||||||
|
- --state.scheme=hash
|
||||||
|
- --syncmode=full
|
||||||
|
- --gcmode=archive
|
||||||
|
|
||||||
|
networks:
|
||||||
|
- chains
|
||||||
|
restart: unless-stopped
|
||||||
|
stop_grace_period: 5m
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.middlewares.celo-mainnet-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/celo-mainnet-archive
|
||||||
|
- traefik.http.services.celo-mainnet-geth-archive-leveldb-hash.loadbalancer.server.port=8545
|
||||||
|
- ${NO_SSL:-traefik.http.routers.celo-mainnet-geth-archive-leveldb-hash.entrypoints=websecure}
|
||||||
|
- ${NO_SSL:-traefik.http.routers.celo-mainnet-geth-archive-leveldb-hash.tls.certresolver=myresolver}
|
||||||
|
- ${NO_SSL:-traefik.http.routers.celo-mainnet-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-mainnet-archive`)}
|
||||||
|
- ${NO_SSL:+traefik.http.routers.celo-mainnet-geth-archive-leveldb-hash.rule=PathPrefix(`/celo-mainnet-archive`)}
|
||||||
|
- traefik.http.routers.celo-mainnet-geth-archive-leveldb-hash.middlewares=celo-mainnet-geth-archive-leveldb-hash-stripprefix, ipwhitelist
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
celo-mainnet-geth-archive-leveldb-hash:
|
||||||
|
celo-mainnet-geth-archive-leveldb-hash_prysm:
|
||||||
|
|
||||||
|
x-upstreams:
|
||||||
|
- chain: celo
|
||||||
|
method-groups:
|
||||||
|
enabled:
|
||||||
|
- debug
|
||||||
|
- filter
|
||||||
|
|
||||||
|
methods:
|
||||||
|
disabled:
|
||||||
|
enabled:
|
||||||
|
# standard geth only
|
||||||
|
- name: debug_getRawBlock
|
||||||
|
- name: debug_getRawTransaction
|
||||||
|
- name: debug_getRawReceipts
|
||||||
|
- name: debug_getRawHeader
|
||||||
|
- name: debug_getBadBlocks
|
||||||
|
# non standard geth only slightly dangerous
|
||||||
|
- name: debug_intermediateRoots
|
||||||
|
- name: debug_dumpBlock
|
||||||
|
# standard geth and erigon
|
||||||
|
- name: debug_accountRange
|
||||||
|
- name: debug_getModifiedAccountsByNumber
|
||||||
|
- name: debug_getModifiedAccountsByHash
|
||||||
|
# non standard geth and erigon
|
||||||
|
- name: eth_getRawTransactionByHash
|
||||||
|
- name: eth_getRawTransactionByBlockHashAndIndex
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,49 +0,0 @@
|
|||||||
{
|
|
||||||
"genesis": {
|
|
||||||
"l1": {
|
|
||||||
"hash": "0xe499ec12e12fc2c94e6714a94f2640dbc748ff6c26fd3f420b25264a3d90066f",
|
|
||||||
"number": 22128103
|
|
||||||
},
|
|
||||||
"l2": {
|
|
||||||
"hash": "0x7586014e20c69b3fa7c9070baf1a7edd95833db57853126f32593b455da2e5c5",
|
|
||||||
"number": 31056500
|
|
||||||
},
|
|
||||||
"l2_time": 1742957258,
|
|
||||||
"system_config": {
|
|
||||||
"batcherAddr": "0x0cd08c7f7a96aa9635f761b49216b9ea74c5ca60",
|
|
||||||
"overhead": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"scalar": "0x0100000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"gasLimit": 30000000,
|
|
||||||
"eip1559Params": "0x0000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"block_time": 1,
|
|
||||||
"max_sequencer_drift": 2892,
|
|
||||||
"seq_window_size": 7200,
|
|
||||||
"channel_timeout": 50,
|
|
||||||
"l1_chain_id": 1,
|
|
||||||
"l2_chain_id": 42220,
|
|
||||||
"regolith_time": 0,
|
|
||||||
"cel2_time": 0,
|
|
||||||
"canyon_time": 0,
|
|
||||||
"delta_time": 0,
|
|
||||||
"ecotone_time": 0,
|
|
||||||
"fjord_time": 0,
|
|
||||||
"granite_time": 0,
|
|
||||||
"batch_inbox_address": "0xff00000000000000000000000000000000042220",
|
|
||||||
"deposit_contract_address": "0xc5c5d157928bdbd2acf6d0777626b6c75a9eaedc",
|
|
||||||
"l1_system_config_address": "0x89e31965d844a309231b1f17759ccaf1b7c09861",
|
|
||||||
"protocol_versions_address": "0x1b6deb2197418075ab314ac4d52ca1d104a8f663",
|
|
||||||
"alt_da": {
|
|
||||||
"da_challenge_contract_address": "0x0000000000000000000000000000000000000000",
|
|
||||||
"da_commitment_type": "GenericCommitment",
|
|
||||||
"da_challenge_window": 1,
|
|
||||||
"da_resolve_window": 1
|
|
||||||
},
|
|
||||||
"chain_op_config": {
|
|
||||||
"eip1559Elasticity": 5,
|
|
||||||
"eip1559Denominator": 400,
|
|
||||||
"eip1559DenominatorCanyon": 400
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1,117 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
services:
|
|
||||||
celo-alfajores-archive:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-geth:${CELO_L2_VERSION:-celo-v2.0.0}
|
|
||||||
volumes:
|
|
||||||
- "${CELO_ALFAJORES_OP_GETH_ARCHIVE_LEVELDB_HASH_DATA:-celo-alfajores-op-geth-archive-leveldb-hash}:/datadir"
|
|
||||||
- ".jwtsecret:/shared/jwt.txt:ro"
|
|
||||||
- "./celo/alfajores/:/chainconfig"
|
|
||||||
- "./celo/scripts/:/scripts"
|
|
||||||
ports:
|
|
||||||
- "10895:10895"
|
|
||||||
- "10895:10895/udp"
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
- 8551
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 5m
|
|
||||||
entrypoint: /scripts/start-op-geth.sh
|
|
||||||
environment:
|
|
||||||
- NETWORK_NAME=alfajores
|
|
||||||
- GETH_BOOTNODES=enode://ac0f42fa46f8cc10bd02a103894d71d495537465133e7c442bc02dc76721a5f41761cc2d8c69e7ba1b33e14e28f516436864d3e0836e2dcdaf032387f72447dd@34.83.164.192:30303,enode://596002969b8b269a4fa34b4709b9600b64201e7d02e2f5f1350affd021b0cbda6ce2b913ebe24f0fb1edcf66b6c730a8a3b02cd940f4de995f73d3b290a0fc92@34.82.177.77:30303,enode://3619455064ef1ce667171bba1df80cfd4c097f018cf0205aaad496f0d509611b7c40396893d9e490ee390cd098888279e177a4d9bb09c58387bb0a6031d237f1@34.19.90.27:30303,enode://e3c54db6004a92d4ee87504f073f3234a25759b485274cc224037e3e5ee792f3b482c3f4fffcb764af6e1859a1aea9710b71e1991e32c1dee7f40352124bb182@35.233.249.87:30303,enode://674410b34fd54c8406a4f945292b96111688d4bab49aecdc34b4f1b346891f4673dcb03ed44c38ab467ef7bec0b20f6031ad88aa1d35ce1333b343d00fa19fb1@34.168.43.76:30303
|
|
||||||
- BEDROCK_DATADIR=/datadir
|
|
||||||
- GETH_STATE_SCHEME=hash
|
|
||||||
- GETH_DB_ENGINE=leveldb
|
|
||||||
- GETH_NAT=extip:${IP}
|
|
||||||
- NODE_TYPE=archive
|
|
||||||
- BEDROCK_SEQUENCER_HTTP=https://sequencer.alfajores.celo-testnet.org
|
|
||||||
- PORT__OP_GETH_P2P=10895
|
|
||||||
- IS_CUSTOM_CHAIN=true
|
|
||||||
- OP_GETH__HISTORICAL_RPC=${CELO_ALFAJORES_ARCHIVE_GETH:-http://celo-alfajores-archive-geth:8545}
|
|
||||||
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-alfajores-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/celo-alfajores-archive"
|
|
||||||
- "traefik.http.services.celo-alfajores-op-geth-archive-leveldb-hash-op-geth-pruned-pebble-path.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.celo-alfajores-op-geth-archive-leveldb-hash.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.celo-alfajores-op-geth-archive-leveldb-hash.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.celo-alfajores-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-alfajores-archive`)"
|
|
||||||
- "traefik.http.routers.celo-alfajores-op-geth-archive-leveldb-hash.middlewares=celo-alfajores-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
celo-alfajores-archive-node:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-node:${CELO_L2_VERSION:-celo-v2.0.0}
|
|
||||||
depends_on:
|
|
||||||
- celo-alfajores-archive
|
|
||||||
expose:
|
|
||||||
- 9545 # RPC
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
ports:
|
|
||||||
- "15895:15895"
|
|
||||||
- "15895:15895/udp"
|
|
||||||
environment:
|
|
||||||
- HEALTHCHECK__REFERENCE_RPC_PROVIDER=https://forno.celo.org
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER="http://celo-alfajores-archive-eigenda-proxy:4242"
|
|
||||||
- OP_NODE_P2P_LISTEN_TCP_PORT=15895
|
|
||||||
- OP_NODE_P2P_LISTEN_UDP_PORT=15895
|
|
||||||
- OP_NODE_P2P_STATIC=/ip4/35.197.25.52/tcp/9222/p2p/16Uiu2HAmQEdyLRSAVZDr5SqbJ1RnKmNDhtQJcEKmemrVxe4FxKwR,/ip4/34.105.22.4/tcp/9222/p2p/16Uiu2HAm1SZBDSugT5MMu7vBY8auDgfZFNhoDeXPLc9Me5FsAxwT,/ip4/34.83.209.168/tcp/9222/p2p/16Uiu2HAmGJAiUX6HLSo4nLh8T984qxzokwL23cVsYuNZy2SrK7C6,/ip4/34.83.214.149/tcp/9222/p2p/16Uiu2HAmAko2Kr3eAjM7tnshtEhYrxQYfKUvN2kwiygeFoBAoi8S,/ip4/34.169.5.52/tcp/9222/p2p/16Uiu2HAmKc6YKHzYgsjBDaj36uAufxpgZFgrzDqVBt6zTPwdhhJD
|
|
||||||
- OP_NODE_ALTDA_ENABLED=true
|
|
||||||
- OP_NODE_ALTDA_DA_SERVICE=true
|
|
||||||
- OP_NODE_ALTDA_VERIFY_ON_READ=false
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER=http://celo-alfajores-archive-eigenda-proxy:4242
|
|
||||||
- OP_NODE_L2_ENGINE_AUTH=/jwtsecret
|
|
||||||
command: >
|
|
||||||
op-node
|
|
||||||
--l1="${ETHEREUM_HOLESKY_EXECUTION_RPC}"
|
|
||||||
--l2=http://celo-alfajores-archive:8551
|
|
||||||
--rpc.addr=0.0.0.0
|
|
||||||
--rpc.port=9545
|
|
||||||
--l1.trustrpc
|
|
||||||
--l1.rpckind=basic
|
|
||||||
--l1.beacon="${ETHEREUM_HOLESKY_BEACON_REST}"
|
|
||||||
--syncmode=execution-layer
|
|
||||||
--p2p.priv.path=/chainconfigs/p2p_node_key_txt
|
|
||||||
--rollup.config=/chainconfigs/rollup.json
|
|
||||||
--rollup.load-protocol-versions=true
|
|
||||||
--rollup.halt=major
|
|
||||||
restart: always
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret:ro
|
|
||||||
- ./celo/alfajores/:/chainconfigs/
|
|
||||||
stop_grace_period: 30s
|
|
||||||
|
|
||||||
celo-alfajores-archive-eigenda-proxy:
|
|
||||||
platform: linux/amd64
|
|
||||||
image: ghcr.io/layr-labs/eigenda-proxy:v1.6.4
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 5m
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
entrypoint: /scripts/start-eigenda-proxy.sh
|
|
||||||
environment:
|
|
||||||
- EIGENDA_LOCAL_DISPERSER_RPC=disperser-holesky.eigenda.xyz:443
|
|
||||||
- EIGENDA_LOCAL_SVC_MANAGER_ADDR=0xD4A7E1Bd8015057293f0D0A557088c286942e84b
|
|
||||||
- OP_NODE__RPC_ENDPOINT=${ETHEREUM_HOLESKY_EXECUTION_RPC}
|
|
||||||
volumes:
|
|
||||||
- ${CELO_ALFAJORES_OP_GETH_ARCHIVE_LEVELDB_HASH__EIGENDA_DATA:-celo-alfajores-op-geth-archive-leveldb-hash_eigenda}:/data
|
|
||||||
#- celo-alfajores-op-geth-archive-leveldb-hash_eigenda:/data
|
|
||||||
- ./celo/scripts:/scripts
|
|
||||||
|
|
||||||
celo-alfajores-archive-key-generator:
|
|
||||||
image: ghcr.io/foundry-rs/foundry
|
|
||||||
volumes:
|
|
||||||
- "./celo/alfajores:/config"
|
|
||||||
entrypoint: sh
|
|
||||||
command: "[ -f /config/p2p_node_key_txt ] && exit 0 || cast w n | grep -i 'Private Key' | awk -F ': ' '{print $2}' | sed 's/0x//' > /config/p2p_node_key_txt"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo-alfajores-op-geth-archive-leveldb-hash:
|
|
||||||
celo-alfajores-op-geth-archive-leveldb-hash_eigenda:
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,117 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
services:
|
|
||||||
celo-alfajores:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-geth:${CELO_L2_VERSION:-celo-v2.0.0}
|
|
||||||
volumes:
|
|
||||||
- "${CELO_ALFAJORES_OP_GETH_PRUNED_PEBBLE_PATH_DATA:-celo-alfajores-op-geth-pruned-pebble-path}:/datadir"
|
|
||||||
- ".jwtsecret:/shared/jwt.txt:ro"
|
|
||||||
- "./celo/alfajores/:/chainconfig"
|
|
||||||
- "./celo/scripts/:/scripts"
|
|
||||||
ports:
|
|
||||||
- "10457:10457"
|
|
||||||
- "10457:10457/udp"
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
- 8551
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 5m
|
|
||||||
entrypoint: /scripts/start-op-geth.sh
|
|
||||||
environment:
|
|
||||||
- NETWORK_NAME=alfajores
|
|
||||||
- GETH_BOOTNODES=enode://ac0f42fa46f8cc10bd02a103894d71d495537465133e7c442bc02dc76721a5f41761cc2d8c69e7ba1b33e14e28f516436864d3e0836e2dcdaf032387f72447dd@34.83.164.192:30303,enode://596002969b8b269a4fa34b4709b9600b64201e7d02e2f5f1350affd021b0cbda6ce2b913ebe24f0fb1edcf66b6c730a8a3b02cd940f4de995f73d3b290a0fc92@34.82.177.77:30303,enode://3619455064ef1ce667171bba1df80cfd4c097f018cf0205aaad496f0d509611b7c40396893d9e490ee390cd098888279e177a4d9bb09c58387bb0a6031d237f1@34.19.90.27:30303,enode://e3c54db6004a92d4ee87504f073f3234a25759b485274cc224037e3e5ee792f3b482c3f4fffcb764af6e1859a1aea9710b71e1991e32c1dee7f40352124bb182@35.233.249.87:30303,enode://674410b34fd54c8406a4f945292b96111688d4bab49aecdc34b4f1b346891f4673dcb03ed44c38ab467ef7bec0b20f6031ad88aa1d35ce1333b343d00fa19fb1@34.168.43.76:30303
|
|
||||||
- BEDROCK_DATADIR=/datadir
|
|
||||||
- GETH_STATE_SCHEME=path
|
|
||||||
- GETH_DB_ENGINE=pebble
|
|
||||||
- GETH_NAT=extip:${IP}
|
|
||||||
- NODE_TYPE=full
|
|
||||||
- BEDROCK_SEQUENCER_HTTP=https://sequencer.alfajores.celo-testnet.org
|
|
||||||
- PORT__OP_GETH_P2P=10457
|
|
||||||
- IS_CUSTOM_CHAIN=true
|
|
||||||
- OP_GETH__HISTORICAL_RPC=${CELO_ALFAJORES_GETH:-http://celo-alfajores-geth:8545}
|
|
||||||
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-alfajores-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/celo-alfajores"
|
|
||||||
- "traefik.http.services.celo-alfajores-op-geth-pruned-pebble-path-op-geth-pruned-pebble-path.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.celo-alfajores-op-geth-pruned-pebble-path.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.celo-alfajores-op-geth-pruned-pebble-path.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.celo-alfajores-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-alfajores`)"
|
|
||||||
- "traefik.http.routers.celo-alfajores-op-geth-pruned-pebble-path.middlewares=celo-alfajores-op-geth-pruned-pebble-path-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
celo-alfajores-node:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-node:${CELO_L2_VERSION:-celo-v2.0.0}
|
|
||||||
depends_on:
|
|
||||||
- celo-alfajores
|
|
||||||
expose:
|
|
||||||
- 9545 # RPC
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
ports:
|
|
||||||
- "15457:15457"
|
|
||||||
- "15457:15457/udp"
|
|
||||||
environment:
|
|
||||||
- HEALTHCHECK__REFERENCE_RPC_PROVIDER=https://forno.celo.org
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER="http://celo-alfajores-eigenda-proxy:4242"
|
|
||||||
- OP_NODE_P2P_LISTEN_TCP_PORT=15457
|
|
||||||
- OP_NODE_P2P_LISTEN_UDP_PORT=15457
|
|
||||||
- OP_NODE_P2P_STATIC=/ip4/35.197.25.52/tcp/9222/p2p/16Uiu2HAmQEdyLRSAVZDr5SqbJ1RnKmNDhtQJcEKmemrVxe4FxKwR,/ip4/34.105.22.4/tcp/9222/p2p/16Uiu2HAm1SZBDSugT5MMu7vBY8auDgfZFNhoDeXPLc9Me5FsAxwT,/ip4/34.83.209.168/tcp/9222/p2p/16Uiu2HAmGJAiUX6HLSo4nLh8T984qxzokwL23cVsYuNZy2SrK7C6,/ip4/34.83.214.149/tcp/9222/p2p/16Uiu2HAmAko2Kr3eAjM7tnshtEhYrxQYfKUvN2kwiygeFoBAoi8S,/ip4/34.169.5.52/tcp/9222/p2p/16Uiu2HAmKc6YKHzYgsjBDaj36uAufxpgZFgrzDqVBt6zTPwdhhJD
|
|
||||||
- OP_NODE_ALTDA_ENABLED=true
|
|
||||||
- OP_NODE_ALTDA_DA_SERVICE=true
|
|
||||||
- OP_NODE_ALTDA_VERIFY_ON_READ=false
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER=http://celo-alfajores-eigenda-proxy:4242
|
|
||||||
- OP_NODE_L2_ENGINE_AUTH=/jwtsecret
|
|
||||||
command: >
|
|
||||||
op-node
|
|
||||||
--l1="${ETHEREUM_HOLESKY_EXECUTION_RPC}"
|
|
||||||
--l2=http://celo-alfajores:8551
|
|
||||||
--rpc.addr=0.0.0.0
|
|
||||||
--rpc.port=9545
|
|
||||||
--l1.trustrpc
|
|
||||||
--l1.rpckind=basic
|
|
||||||
--l1.beacon="${ETHEREUM_HOLESKY_BEACON_REST}"
|
|
||||||
--syncmode=execution-layer
|
|
||||||
--p2p.priv.path=/chainconfigs/p2p_node_key_txt
|
|
||||||
--rollup.config=/chainconfigs/rollup.json
|
|
||||||
--rollup.load-protocol-versions=true
|
|
||||||
--rollup.halt=major
|
|
||||||
restart: always
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret:ro
|
|
||||||
- ./celo/alfajores/:/chainconfigs/
|
|
||||||
stop_grace_period: 30s
|
|
||||||
|
|
||||||
celo-alfajores-eigenda-proxy:
|
|
||||||
platform: linux/amd64
|
|
||||||
image: ghcr.io/layr-labs/eigenda-proxy:v1.6.4
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 5m
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
entrypoint: /scripts/start-eigenda-proxy.sh
|
|
||||||
environment:
|
|
||||||
- EIGENDA_LOCAL_DISPERSER_RPC=disperser-holesky.eigenda.xyz:443
|
|
||||||
- EIGENDA_LOCAL_SVC_MANAGER_ADDR=0xD4A7E1Bd8015057293f0D0A557088c286942e84b
|
|
||||||
- OP_NODE__RPC_ENDPOINT=${ETHEREUM_HOLESKY_EXECUTION_RPC}
|
|
||||||
volumes:
|
|
||||||
- ${CELO_ALFAJORES_OP_GETH_PRUNED_PEBBLE_PATH__EIGENDA_DATA:-celo-alfajores-op-geth-pruned-pebble-path_eigenda}:/data
|
|
||||||
#- celo-alfajores-op-geth-pruned-pebble-path_eigenda:/data
|
|
||||||
- ./celo/scripts:/scripts
|
|
||||||
|
|
||||||
celo-alfajores-key-generator:
|
|
||||||
image: ghcr.io/foundry-rs/foundry
|
|
||||||
volumes:
|
|
||||||
- "./celo/alfajores:/config"
|
|
||||||
entrypoint: sh
|
|
||||||
command: "[ -f /config/p2p_node_key_txt ] && exit 0 || cast w n | grep -i 'Private Key' | awk -F ': ' '{print $2}' | sed 's/0x//' > /config/p2p_node_key_txt"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo-alfajores-op-geth-pruned-pebble-path:
|
|
||||||
celo-alfajores-op-geth-pruned-pebble-path_eigenda:
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,117 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
services:
|
|
||||||
celo-mainnet-archive:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-geth:${CELO_L2_VERSION:-celo-v2.0.0}
|
|
||||||
volumes:
|
|
||||||
- "${CELO_MAINNET_OP_GETH_ARCHIVE_LEVELDB_HASH_DATA:-celo-mainnet-op-geth-archive-leveldb-hash}:/datadir"
|
|
||||||
- ".jwtsecret:/shared/jwt.txt:ro"
|
|
||||||
- "./celo/mainnet/:/chainconfig"
|
|
||||||
- "./celo/scripts/:/scripts"
|
|
||||||
ports:
|
|
||||||
- "10111:10111"
|
|
||||||
- "10111:10111/udp"
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
- 8551
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 5m
|
|
||||||
entrypoint: /scripts/start-op-geth.sh
|
|
||||||
environment:
|
|
||||||
- NETWORK_NAME=mainnet
|
|
||||||
- GETH_BOOTNODES=enode://28f4fcb7f38c1b012087f7aef25dcb0a1257ccf1cdc4caa88584dc25416129069b514908c8cead5d0105cb0041dd65cd4ee185ae0d379a586fb07b1447e9de38@34.169.39.223:30303,enode://a9077c3e030206954c5c7f22cc16a32cb5013112aa8985e3575fadda7884a508384e1e63c077b7d9fcb4a15c716465d8585567f047c564ada2e823145591e444@34.169.212.31:30303,enode://029b007a7a56acbaa8ea50ec62cda279484bf3843fae1646f690566f784aca50e7d732a9a0530f0541e5ed82ba9bf2a4e21b9021559c5b8b527b91c9c7a38579@34.82.139.199:30303,enode://f3c96b73a5772c5efb48d5a33bf193e58080d826ba7f03e9d5bdef20c0634a4f83475add92ab6313b7a24aa4f729689efb36f5093e5d527bb25e823f8a377224@34.82.84.247:30303,enode://daa5ad65d16bcb0967cf478d9f20544bf1b6de617634e452dff7b947279f41f408b548261d62483f2034d237f61cbcf92a83fc992dbae884156f28ce68533205@34.168.45.168:30303,enode://c79d596d77268387e599695d23e941c14c220745052ea6642a71ef7df31a13874cb7f2ce2ecf5a8a458cfc9b5d9219ce3e8bc6e5c279656177579605a5533c4f@35.247.32.229:30303,enode://4151336075dd08eb6c75bfd63855e8a4bd6fd0f91ae4a81b14930f2671e16aee55495c139380c16e1094a49691875e69e40a3a5e2b4960c7859e7eb5745f9387@35.205.149.224:30303,enode://ab999db751265c714b171344de1972ed74348162de465a0444f56e50b8cfd048725b213ba1fe48c15e3dfb0638e685ea9a21b8447a54eb2962c6768f43018e5c@34.79.3.199:30303,enode://9d86d92fb38a429330546fe1aefce264e1f55c5d40249b63153e7df744005fa3c1e2da295e307041fd30ab1c618715f362c932c28715bc20bed7ae4fc76dea81@34.77.144.164:30303,enode://c82c31f21dd5bbb8dc35686ff67a4353382b4017c9ec7660a383ccb5b8e3b04c6d7aefe71203e550382f6f892795728570f8190afd885efcb7b78fa398608699@34.76.202.74:30303,enode://3bad5f57ad8de6541f02e36d806b87e7e9ca6d533c956e89a56b3054ae85d608784f2cd948dc685f7d6bbd5a2f6dd1a23cc03e529ea370dd72d880864a2af6a3@104.199.93.87:30303,enode://1decf3b8b9a0d0b8332d15218f3bf0ceb9606b0efe18f352c51effc14bbf1f4f3f46711e1d460230cb361302ceaad2be48b5b187ad946e50d729b34e463268d2@35.240.26.148:30303
|
|
||||||
- BEDROCK_DATADIR=/datadir
|
|
||||||
- GETH_STATE_SCHEME=hash
|
|
||||||
- GETH_DB_ENGINE=leveldb
|
|
||||||
- GETH_NAT=extip:${IP}
|
|
||||||
- NODE_TYPE=archive
|
|
||||||
- BEDROCK_SEQUENCER_HTTP=https://cel2-sequencer.celo.org
|
|
||||||
- PORT__OP_GETH_P2P=10111
|
|
||||||
- IS_CUSTOM_CHAIN=true
|
|
||||||
- OP_GETH__HISTORICAL_RPC=${CELO_MAINNET_ARCHIVE_GETH:-http://celo-mainnet-archive-geth:8545}
|
|
||||||
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/celo-mainnet-archive"
|
|
||||||
- "traefik.http.services.celo-mainnet-op-geth-archive-leveldb-hash-op-geth-pruned-pebble-path.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-mainnet-archive`)"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-archive-leveldb-hash.middlewares=celo-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
celo-mainnet-archive-node:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-node:${CELO_L2_VERSION:-celo-v2.0.0}
|
|
||||||
depends_on:
|
|
||||||
- celo-mainnet-archive
|
|
||||||
expose:
|
|
||||||
- 9545 # RPC
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
ports:
|
|
||||||
- "15111:15111"
|
|
||||||
- "15111:15111/udp"
|
|
||||||
environment:
|
|
||||||
- HEALTHCHECK__REFERENCE_RPC_PROVIDER=https://forno.celo.org
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER="http://celo-mainnet-archive-eigenda-proxy:4242"
|
|
||||||
- OP_NODE_P2P_LISTEN_TCP_PORT=15111
|
|
||||||
- OP_NODE_P2P_LISTEN_UDP_PORT=15111
|
|
||||||
- OP_NODE_P2P_STATIC=/ip4/34.83.180.111/tcp/9222/p2p/16Uiu2HAkxBYxPd4eDFJzwm84XPzymkXud847vu65eju4UCDRpDSM,/ip4/34.169.135.64/tcp/9222/p2p/16Uiu2HAm6oVW1YeKheAuhnJSySnVvbXZ5gXL4g36XrWb1imF9K3m,/ip4/34.169.201.36/tcp/9222/p2p/16Uiu2HAmCqAFUoq72tjGJfCkkzHoNbjTjshjEED4kWtRKMSxcMgb,/ip4/34.83.127.51/tcp/9222/p2p/16Uiu2HAmBqKBoxkk95CsZiXQmQHv9WMiHXU4Di6wzFuYEKo1i7dg,/ip4/35.227.175.30/tcp/9222/p2p/16Uiu2HAmTNVkin4vogHsqwJwShUkHtx48aDoxygGwgp9Tv5zQWTM,/ip4/34.82.198.98/tcp/9222/p2p/16Uiu2HAmS6CeFPUXMztLf4VDh9NLbauuXLSYx9YkXfyiscqoxsKt,/ip4/34.38.181.223/tcp/9222/p2p/16Uiu2HAmH3xfYGjaJDw6sxa8ds3bVwMYLZRpPzpTtTrYq7G4nZs3,/ip4/34.76.38.6/tcp/9222/p2p/16Uiu2HAm6yXZ9oRTSJfZzXe8wXJ165X3pfzAKdLB9sa27eRZgTwD,/ip4/35.187.106.54/tcp/9222/p2p/16Uiu2HAmPFucuARxzAqtXcD3evFoutKh7tSmfQCxwPKUXfkoyaqY,/ip4/34.76.16.183/tcp/9222/p2p/16Uiu2HAmS8NybNYedzHf4nuFfqyCDH9xiMpgMWxctMtau8dTUxeP,/ip4/104.199.39.59/tcp/9222/p2p/16Uiu2HAmGfwjf1XPikWYDN4NFpTBuuvs6C7eF2iyyKvvjK2MGrVM,/ip4/34.140.117.79/tcp/9222/p2p/16Uiu2HAkwSVN7WHohhoE1sh932y2q3Pv7AFiSugM8K6iFZLALq66
|
|
||||||
- OP_NODE_ALTDA_ENABLED=true
|
|
||||||
- OP_NODE_ALTDA_DA_SERVICE=true
|
|
||||||
- OP_NODE_ALTDA_VERIFY_ON_READ=false
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER=http://celo-mainnet-archive-eigenda-proxy:4242
|
|
||||||
- OP_NODE_L2_ENGINE_AUTH=/jwtsecret
|
|
||||||
command: >
|
|
||||||
op-node
|
|
||||||
--l1="${ETHEREUM_MAINNET_EXECUTION_RPC}"
|
|
||||||
--l2=http://celo-mainnet-archive:8551
|
|
||||||
--rpc.addr=0.0.0.0
|
|
||||||
--rpc.port=9545
|
|
||||||
--l1.trustrpc
|
|
||||||
--l1.rpckind=basic
|
|
||||||
--l1.beacon="${ETHEREUM_MAINNET_BEACON_REST}"
|
|
||||||
--syncmode=execution-layer
|
|
||||||
--p2p.priv.path=/chainconfigs/p2p_node_key_txt
|
|
||||||
--rollup.config=/chainconfigs/rollup.json
|
|
||||||
--rollup.load-protocol-versions=true
|
|
||||||
--rollup.halt=major
|
|
||||||
restart: always
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret:ro
|
|
||||||
- ./celo/mainnet/:/chainconfigs/
|
|
||||||
stop_grace_period: 30s
|
|
||||||
|
|
||||||
celo-mainnet-archive-eigenda-proxy:
|
|
||||||
platform: linux/amd64
|
|
||||||
image: ghcr.io/layr-labs/eigenda-proxy:v1.6.4
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 5m
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
entrypoint: /scripts/start-eigenda-proxy.sh
|
|
||||||
environment:
|
|
||||||
- EIGENDA_LOCAL_DISPERSER_RPC=disperser.eigenda.xyz:443
|
|
||||||
- EIGENDA_LOCAL_SVC_MANAGER_ADDR=0x870679e138bcdf293b7ff14dd44b70fc97e12fc0
|
|
||||||
- OP_NODE__RPC_ENDPOINT=${ETHEREUM_MAINNET_EXECUTION_RPC}
|
|
||||||
volumes:
|
|
||||||
- ${CELO_MAINNET_OP_GETH_ARCHIVE_LEVELDB_HASH__EIGENDA_DATA:-celo-mainnet-op-geth-archive-leveldb-hash_eigenda}:/data
|
|
||||||
#- celo-mainnet-op-geth-archive-leveldb-hash_eigenda:/data
|
|
||||||
- ./celo/scripts:/scripts
|
|
||||||
|
|
||||||
celo-mainnet-archive-key-generator:
|
|
||||||
image: ghcr.io/foundry-rs/foundry
|
|
||||||
volumes:
|
|
||||||
- "./celo/mainnet:/config"
|
|
||||||
entrypoint: sh
|
|
||||||
command: "[ -f /config/p2p_node_key_txt ] && exit 0 || cast w n | grep -i 'Private Key' | awk -F ': ' '{print $2}' | sed 's/0x//' > /config/p2p_node_key_txt"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo-mainnet-op-geth-archive-leveldb-hash:
|
|
||||||
celo-mainnet-op-geth-archive-leveldb-hash_eigenda:
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,117 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
services:
|
|
||||||
celo-mainnet:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-geth:${CELO_L2_VERSION:-celo-v2.0.0}
|
|
||||||
volumes:
|
|
||||||
- "${CELO_MAINNET_OP_GETH_PRUNED_PEBBLE_PATH_DATA:-celo-mainnet-op-geth-pruned-pebble-path}:/datadir"
|
|
||||||
- ".jwtsecret:/shared/jwt.txt:ro"
|
|
||||||
- "./celo/mainnet/:/chainconfig"
|
|
||||||
- "./celo/scripts/:/scripts"
|
|
||||||
ports:
|
|
||||||
- "10993:10993"
|
|
||||||
- "10993:10993/udp"
|
|
||||||
expose:
|
|
||||||
- 8545
|
|
||||||
- 8551
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
restart: always
|
|
||||||
stop_grace_period: 5m
|
|
||||||
entrypoint: /scripts/start-op-geth.sh
|
|
||||||
environment:
|
|
||||||
- NETWORK_NAME=mainnet
|
|
||||||
- GETH_BOOTNODES=enode://28f4fcb7f38c1b012087f7aef25dcb0a1257ccf1cdc4caa88584dc25416129069b514908c8cead5d0105cb0041dd65cd4ee185ae0d379a586fb07b1447e9de38@34.169.39.223:30303,enode://a9077c3e030206954c5c7f22cc16a32cb5013112aa8985e3575fadda7884a508384e1e63c077b7d9fcb4a15c716465d8585567f047c564ada2e823145591e444@34.169.212.31:30303,enode://029b007a7a56acbaa8ea50ec62cda279484bf3843fae1646f690566f784aca50e7d732a9a0530f0541e5ed82ba9bf2a4e21b9021559c5b8b527b91c9c7a38579@34.82.139.199:30303,enode://f3c96b73a5772c5efb48d5a33bf193e58080d826ba7f03e9d5bdef20c0634a4f83475add92ab6313b7a24aa4f729689efb36f5093e5d527bb25e823f8a377224@34.82.84.247:30303,enode://daa5ad65d16bcb0967cf478d9f20544bf1b6de617634e452dff7b947279f41f408b548261d62483f2034d237f61cbcf92a83fc992dbae884156f28ce68533205@34.168.45.168:30303,enode://c79d596d77268387e599695d23e941c14c220745052ea6642a71ef7df31a13874cb7f2ce2ecf5a8a458cfc9b5d9219ce3e8bc6e5c279656177579605a5533c4f@35.247.32.229:30303,enode://4151336075dd08eb6c75bfd63855e8a4bd6fd0f91ae4a81b14930f2671e16aee55495c139380c16e1094a49691875e69e40a3a5e2b4960c7859e7eb5745f9387@35.205.149.224:30303,enode://ab999db751265c714b171344de1972ed74348162de465a0444f56e50b8cfd048725b213ba1fe48c15e3dfb0638e685ea9a21b8447a54eb2962c6768f43018e5c@34.79.3.199:30303,enode://9d86d92fb38a429330546fe1aefce264e1f55c5d40249b63153e7df744005fa3c1e2da295e307041fd30ab1c618715f362c932c28715bc20bed7ae4fc76dea81@34.77.144.164:30303,enode://c82c31f21dd5bbb8dc35686ff67a4353382b4017c9ec7660a383ccb5b8e3b04c6d7aefe71203e550382f6f892795728570f8190afd885efcb7b78fa398608699@34.76.202.74:30303,enode://3bad5f57ad8de6541f02e36d806b87e7e9ca6d533c956e89a56b3054ae85d608784f2cd948dc685f7d6bbd5a2f6dd1a23cc03e529ea370dd72d880864a2af6a3@104.199.93.87:30303,enode://1decf3b8b9a0d0b8332d15218f3bf0ceb9606b0efe18f352c51effc14bbf1f4f3f46711e1d460230cb361302ceaad2be48b5b187ad946e50d729b34e463268d2@35.240.26.148:30303
|
|
||||||
- BEDROCK_DATADIR=/datadir
|
|
||||||
- GETH_STATE_SCHEME=path
|
|
||||||
- GETH_DB_ENGINE=pebble
|
|
||||||
- GETH_NAT=extip:${IP}
|
|
||||||
- NODE_TYPE=full
|
|
||||||
- BEDROCK_SEQUENCER_HTTP=https://cel2-sequencer.celo.org
|
|
||||||
- PORT__OP_GETH_P2P=10993
|
|
||||||
- IS_CUSTOM_CHAIN=true
|
|
||||||
- OP_GETH__HISTORICAL_RPC=${CELO_MAINNET_GETH:-http://celo-mainnet-geth:8545}
|
|
||||||
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.http.middlewares.celo-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/celo-mainnet"
|
|
||||||
- "traefik.http.services.celo-mainnet-op-geth-pruned-pebble-path-op-geth-pruned-pebble-path.loadbalancer.server.port=8545"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/celo-mainnet`)"
|
|
||||||
- "traefik.http.routers.celo-mainnet-op-geth-pruned-pebble-path.middlewares=celo-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist"
|
|
||||||
|
|
||||||
|
|
||||||
celo-mainnet-node:
|
|
||||||
image: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-node:${CELO_L2_VERSION:-celo-v2.0.0}
|
|
||||||
depends_on:
|
|
||||||
- celo-mainnet
|
|
||||||
expose:
|
|
||||||
- 9545 # RPC
|
|
||||||
- 7300 # metrics
|
|
||||||
- 6060 # pprof
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
ports:
|
|
||||||
- "15993:15993"
|
|
||||||
- "15993:15993/udp"
|
|
||||||
environment:
|
|
||||||
- HEALTHCHECK__REFERENCE_RPC_PROVIDER=https://forno.celo.org
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER="http://celo-mainnet-eigenda-proxy:4242"
|
|
||||||
- OP_NODE_P2P_LISTEN_TCP_PORT=15993
|
|
||||||
- OP_NODE_P2P_LISTEN_UDP_PORT=15993
|
|
||||||
- OP_NODE_P2P_STATIC=/ip4/34.83.180.111/tcp/9222/p2p/16Uiu2HAkxBYxPd4eDFJzwm84XPzymkXud847vu65eju4UCDRpDSM,/ip4/34.169.135.64/tcp/9222/p2p/16Uiu2HAm6oVW1YeKheAuhnJSySnVvbXZ5gXL4g36XrWb1imF9K3m,/ip4/34.169.201.36/tcp/9222/p2p/16Uiu2HAmCqAFUoq72tjGJfCkkzHoNbjTjshjEED4kWtRKMSxcMgb,/ip4/34.83.127.51/tcp/9222/p2p/16Uiu2HAmBqKBoxkk95CsZiXQmQHv9WMiHXU4Di6wzFuYEKo1i7dg,/ip4/35.227.175.30/tcp/9222/p2p/16Uiu2HAmTNVkin4vogHsqwJwShUkHtx48aDoxygGwgp9Tv5zQWTM,/ip4/34.82.198.98/tcp/9222/p2p/16Uiu2HAmS6CeFPUXMztLf4VDh9NLbauuXLSYx9YkXfyiscqoxsKt,/ip4/34.38.181.223/tcp/9222/p2p/16Uiu2HAmH3xfYGjaJDw6sxa8ds3bVwMYLZRpPzpTtTrYq7G4nZs3,/ip4/34.76.38.6/tcp/9222/p2p/16Uiu2HAm6yXZ9oRTSJfZzXe8wXJ165X3pfzAKdLB9sa27eRZgTwD,/ip4/35.187.106.54/tcp/9222/p2p/16Uiu2HAmPFucuARxzAqtXcD3evFoutKh7tSmfQCxwPKUXfkoyaqY,/ip4/34.76.16.183/tcp/9222/p2p/16Uiu2HAmS8NybNYedzHf4nuFfqyCDH9xiMpgMWxctMtau8dTUxeP,/ip4/104.199.39.59/tcp/9222/p2p/16Uiu2HAmGfwjf1XPikWYDN4NFpTBuuvs6C7eF2iyyKvvjK2MGrVM,/ip4/34.140.117.79/tcp/9222/p2p/16Uiu2HAkwSVN7WHohhoE1sh932y2q3Pv7AFiSugM8K6iFZLALq66
|
|
||||||
- OP_NODE_ALTDA_ENABLED=true
|
|
||||||
- OP_NODE_ALTDA_DA_SERVICE=true
|
|
||||||
- OP_NODE_ALTDA_VERIFY_ON_READ=false
|
|
||||||
- OP_NODE_ALTDA_DA_SERVER=http://celo-mainnet-eigenda-proxy:4242
|
|
||||||
- OP_NODE_L2_ENGINE_AUTH=/jwtsecret
|
|
||||||
command: >
|
|
||||||
op-node
|
|
||||||
--l1="${ETHEREUM_MAINNET_EXECUTION_RPC}"
|
|
||||||
--l2=http://celo-mainnet:8551
|
|
||||||
--rpc.addr=0.0.0.0
|
|
||||||
--rpc.port=9545
|
|
||||||
--l1.trustrpc
|
|
||||||
--l1.rpckind=basic
|
|
||||||
--l1.beacon="${ETHEREUM_MAINNET_BEACON_REST}"
|
|
||||||
--syncmode=execution-layer
|
|
||||||
--p2p.priv.path=/chainconfigs/p2p_node_key_txt
|
|
||||||
--rollup.config=/chainconfigs/rollup.json
|
|
||||||
--rollup.load-protocol-versions=true
|
|
||||||
--rollup.halt=major
|
|
||||||
restart: always
|
|
||||||
volumes:
|
|
||||||
- .jwtsecret:/jwtsecret:ro
|
|
||||||
- ./celo/mainnet/:/chainconfigs/
|
|
||||||
stop_grace_period: 30s
|
|
||||||
|
|
||||||
celo-mainnet-eigenda-proxy:
|
|
||||||
platform: linux/amd64
|
|
||||||
image: ghcr.io/layr-labs/eigenda-proxy:v1.6.4
|
|
||||||
restart: unless-stopped
|
|
||||||
stop_grace_period: 5m
|
|
||||||
networks:
|
|
||||||
- chains
|
|
||||||
entrypoint: /scripts/start-eigenda-proxy.sh
|
|
||||||
environment:
|
|
||||||
- EIGENDA_LOCAL_DISPERSER_RPC=disperser.eigenda.xyz:443
|
|
||||||
- EIGENDA_LOCAL_SVC_MANAGER_ADDR=0x870679e138bcdf293b7ff14dd44b70fc97e12fc0
|
|
||||||
- OP_NODE__RPC_ENDPOINT=${ETHEREUM_MAINNET_EXECUTION_RPC}
|
|
||||||
volumes:
|
|
||||||
- ${CELO_MAINNET_OP_GETH_PRUNED_PEBBLE_PATH__EIGENDA_DATA:-celo-mainnet-op-geth-pruned-pebble-path_eigenda}:/data
|
|
||||||
#- celo-mainnet-op-geth-pruned-pebble-path_eigenda:/data
|
|
||||||
- ./celo/scripts:/scripts
|
|
||||||
|
|
||||||
celo-mainnet-key-generator:
|
|
||||||
image: ghcr.io/foundry-rs/foundry
|
|
||||||
volumes:
|
|
||||||
- "./celo/mainnet:/config"
|
|
||||||
entrypoint: sh
|
|
||||||
command: "[ -f /config/p2p_node_key_txt ] && exit 0 || cast w n | grep -i 'Private Key' | awk -F ': ' '{print $2}' | sed 's/0x//' > /config/p2p_node_key_txt"
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
celo-mainnet-op-geth-pruned-pebble-path:
|
|
||||||
celo-mainnet-op-geth-pruned-pebble-path_eigenda:
|
|
||||||
|
|
||||||
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user