89 lines
4.7 KiB
YAML
89 lines
4.7 KiB
YAML
version: '3.1'
|
|
|
|
services:
|
|
base-fullnode: # this is Optimism's geth client
|
|
image: ghcr.io/paradigmxyz/op-reth:v1.1.4
|
|
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}"
|
|
networks:
|
|
- chains
|
|
|
|
volumes:
|
|
base-reth-fullnode:
|