109 lines
3.9 KiB
YAML
109 lines
3.9 KiB
YAML
services:
|
|
op-zircuit-testnet-client:
|
|
image: zircuit1/l2-geth:${ZIRCUIT_TESTNET_VERSION:-8ea4db5d6e952f63c2912d2794bbfd8eda55f471}
|
|
volumes:
|
|
- "op-zircuit-testnet:/db"
|
|
- "./zircuit/testnet/genesis.json:/genesis.json"
|
|
- ".jwtsecret:/jwtsecret"
|
|
- "./zircuit_testnet_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_TESTNET_SEQUENCER_HTTP}"
|
|
- "--rollup.disabletxpoolgossip=true"
|
|
environment:
|
|
FORK_TRIGGER: "false"
|
|
ETH_STATS_ENABLED: 0
|
|
#ETH_STATS_NODE: "d${DOMAIN}"
|
|
#ETH_STATS_SERVER: ethstats-mainnet-sk3bgt6hciu.zircuit.com
|
|
#ETH_STATS_SERVER_PORT: 443
|
|
WS_SECRET: ${ZIRCUIT_TESTNET_WS_SECRET}
|
|
networks:
|
|
- chains
|
|
|
|
op-zircuit-testnet:
|
|
restart: unless-stopped
|
|
image: nginx
|
|
depends_on:
|
|
- op-zircuit-testnet-client
|
|
expose:
|
|
- 80
|
|
environment:
|
|
PROXY_HOST: op-zircuit-testnet-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-testnet-stripprefix.stripprefix.prefixes=/zircuit-testnet"
|
|
- "traefik.http.services.zircuit-testnet.loadbalancer.server.port=80"
|
|
- "traefik.http.routers.zircuit-testnet.entrypoints=websecure"
|
|
- "traefik.http.routers.zircuit-testnet.tls.certresolver=myresolver"
|
|
- "traefik.http.routers.zircuit-testnet.rule=Host(`$DOMAIN`) && PathPrefix(`/zircuit-testnet`)"
|
|
- "traefik.http.routers.zircuit-testnet.middlewares=zircuit-testnet-stripprefix, ipwhitelist"
|
|
|
|
|
|
op-zircuit-testnet-node:
|
|
depends_on:
|
|
- op-zircuit-testnet-client
|
|
image: zircuit1/op-node:${ZIRCUIT_TESTNET_VERSION:-8ea4db5d6e952f63c2912d2794bbfd8eda55f471}
|
|
ports:
|
|
- "20209:20209"
|
|
- "20209:20209/udp"
|
|
volumes:
|
|
- ".jwtsecret:/jwtsecret"
|
|
- "./zircuit/testnet/rollup.json:/rollup.json"
|
|
- "./zircuit_testnet/config/:/config"
|
|
networks:
|
|
- chains
|
|
environment:
|
|
OP_NODE_L1_ETH_RPC: ${ZIRCUIT_ETHEREUM_TESTNET_EXECUTION_RPC}
|
|
OP_NODE_L2_ENGINE_RPC: http://op-zircuit-testnet-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_TESTNET_BEACON_REST}
|
|
#OP_NODE_L1_BEACON_ARCHIVER: ${ZIRCUIT_ETHEREUM_TESTNET_BEACON_ARCHIVER}
|
|
OP_NODE_SYNCMODE: "consensus-layer"
|
|
OP_NODE_P2P_LISTEN_IP: "0.0.0.0"
|
|
OP_NODE_P2P_LISTEN_TCP_PORT: 20209
|
|
OP_NODE_P2P_LISTEN_UDP_PORT: 20209
|
|
OP_NODE_P2P_PEER_SCORING: light
|
|
OP_NODE_P2P_PEER_BANNING: "true"
|
|
OP_NODE_P2P_STATIC: ${ZIRCUIT_TESTNET_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-testnet-key-generator:
|
|
image: ghcr.io/foundry-rs/foundry
|
|
volumes:
|
|
- "./zircuit_testnet/config:/config"
|
|
- "./zircuit/generate-node-key-script:/generate-node-key"
|
|
entrypoint: sh
|
|
command: /generate-node-key
|
|
|
|
|
|
volumes:
|
|
op-zircuit-testnet:
|
|
|