110 lines
3.8 KiB
YAML
110 lines
3.8 KiB
YAML
services:
|
|
op-zircuit-client:
|
|
image: zircuit1/l2-geth:291a62698ff9a8a182e27217ff971d7fe5629e4b
|
|
volumes:
|
|
- "op-zircuit:/db"
|
|
- "./zircuit/mainnet/genesis.json:/genesis.json"
|
|
- ".jwtsecret:/jwtsecret"
|
|
- "./zircuit_config:/config"
|
|
entrypoint:
|
|
# pass the L2 specific flags by overriding the entry-point and adding extra arguments
|
|
- "/bin/sh"
|
|
- "/entrypoint.sh"
|
|
- "--authrpc.jwtsecret=/jwtsecret"
|
|
- "--rollup.sequencerhttp=${ZIRCUIT_SEQUENCER_HTTP}"
|
|
- "--rollup.disabletxpoolgossip=true"
|
|
- "--http.api=eth,net,web3,debug"
|
|
environment:
|
|
FORK_TRIGGER: "false"
|
|
ETH_STATS_ENABLED: 1
|
|
ETH_STATS_NODE: "d${DOMAIN}"
|
|
ETH_STATS_SERVER: ethstats-ap.mainnet.zircuit.com
|
|
ETH_STATS_SERVER_PORT: 443
|
|
WS_SECRET: ${ZIRCUIT_MAINNET_WS_SECRET}
|
|
networks:
|
|
- chains
|
|
|
|
op-zircuit:
|
|
restart: unless-stopped
|
|
image: nginx
|
|
depends_on:
|
|
- op-zircuit-client
|
|
expose:
|
|
- 80
|
|
environment:
|
|
PROXY_HOST: op-zircuit-client
|
|
RPC_PORT: 8545
|
|
RPC_PATH: ""
|
|
WS_PORT: 8546
|
|
WS_PATH: ""
|
|
networks:
|
|
- chains
|
|
volumes:
|
|
- ./nginx-proxy:/etc/nginx/templates
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.middlewares.zircuit-mainnet-stripprefix.stripprefix.prefixes=/zircuit-mainnet"
|
|
- "traefik.http.services.zircuit-mainnet.loadbalancer.server.port=80"
|
|
- "traefik.http.routers.zircuit-mainnet.entrypoints=websecure"
|
|
- "traefik.http.routers.zircuit-mainnet.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.zircuit-mainnet.rule=Host(`$DOMAIN`) && PathPrefix(`/zircuit-mainnet`)"
|
|
- "traefik.http.routers.zircuit-mainnet.middlewares=zircuit-mainnet-stripprefix, ipwhitelist"
|
|
|
|
|
|
op-zircuit-node:
|
|
depends_on:
|
|
- op-zircuit-client
|
|
image: zircuit1/op-node:291a62698ff9a8a182e27217ff971d7fe5629e4b
|
|
ports:
|
|
- "43778:43778"
|
|
- "43778:43778/udp"
|
|
volumes:
|
|
- ".jwtsecret:/jwtsecret"
|
|
- "./zircuit/mainnet/rollup.json:/rollup.json"
|
|
- "./zircuit/config/}:/config"
|
|
networks:
|
|
- chains
|
|
environment:
|
|
OP_NODE_L1_ETH_RPC: ${ZIRCUIT_ETHEREUM_MAINNET_EXECUTION_RPC}
|
|
OP_NODE_L2_ENGINE_RPC: http://op-zircuit-client:8551
|
|
OP_NODE_ROLLUP_CONFIG: /rollup.json
|
|
OP_NODE_RPC_ADDR: "0.0.0.0"
|
|
OP_NODE_RPC_PORT: 9545
|
|
OP_NODE_L1_RPC_KIND: "basic"
|
|
OP_NODE_L2_ENGINE_AUTH: /jwtsecret
|
|
OP_NODE_VERIFIER_L1_CONFS: 0
|
|
OP_NODE_SEQUENCER_ENABLED: "false"
|
|
OP_NODE_SEQUENCER_STOPPED: "false"
|
|
OP_NODE_SEQUENCER_MAX_SAFE_LAG: 0
|
|
OP_NODE_SEQUENCER_L1_CONFS: 0
|
|
OP_NODE_L1_EPOCH_POLL_INTERVAL: 384s
|
|
OP_NODE_HEARTBEAT_ENABLED: "false"
|
|
OP_NODE_L1_BEACON: ${ZIRCUIT_ETHEREUM_MAINNET_BEACON_REST}
|
|
#OP_NODE_L1_BEACON_ARCHIVER: ${ZIRCUIT_ETHEREUM_MAINNET_BEACON_ARCHIVER}
|
|
OP_NODE_SYNCMODE: "consensus-layer"
|
|
OP_NODE_P2P_LISTEN_IP: "0.0.0.0"
|
|
OP_NODE_P2P_LISTEN_TCP_PORT: 43778
|
|
OP_NODE_P2P_LISTEN_UDP_PORT: 43778
|
|
OP_NODE_P2P_PEER_SCORING: light
|
|
OP_NODE_P2P_PEER_BANNING: "true"
|
|
OP_NODE_P2P_STATIC: ${ZIRCUIT_MAINNET_STATIC_PEERS}
|
|
OP_NODE_P2P_PRIV_PATH: /config/p2p_node_key_txt
|
|
OP_NODE_P2P_ADVERTISE_IP: ${IP}
|
|
OP_NODE_LOG_LEVEL: info
|
|
OP_NODE_LOG_FORMAT: json
|
|
OP_NODE_LOG_COLOR: "false"
|
|
|
|
|
|
op-zircuit-key-generator:
|
|
image: ghcr.io/foundry-rs/foundry
|
|
volumes:
|
|
- "./zircuit/config:/config"
|
|
- "./zircuit/generate-node-key-script:/generate-node-key"
|
|
entrypoint: sh
|
|
command: /generate-node-key
|
|
|
|
|
|
volumes:
|
|
op-zircuit:
|
|
|