mirror of
https://github.com/vacp2p/linea-monorepo.git
synced 2026-01-09 20:27:58 -05:00
* Limiting number of concurrent traces API requests for the local stack to avoid occasional OOM-s * Limiting number of verticles for Traces API node * Trying out Besu untuned and raising limit per endpoint to 2 for traces * Trying out Besu untuned and raising limit per endpoint to 2 for traces and Shomei node * Using besu untuned for arithmetization as well
122 lines
5.2 KiB
YAML
122 lines
5.2 KiB
YAML
# to use this file run
|
|
# docker compose -f compose.yml -f compose-local-dev-traces-v2.overrides.yml --profile l2 --profile l1 up
|
|
|
|
services:
|
|
sequencer:
|
|
environment:
|
|
JAVA_OPTS: -XX:+UnlockExperimentalVMOptions -XX:-UseG1GC -XX:+UseZGC
|
|
volumes:
|
|
- ../config/common/traces-limits-besu-v2.toml:/var/lib/besu/traces-limits.toml:ro
|
|
|
|
l2-node-besu:
|
|
environment:
|
|
JAVA_OPTS: -XX:+UnlockExperimentalVMOptions -XX:-UseG1GC -XX:+UseZGC
|
|
volumes:
|
|
- ../config/common/traces-limits-besu-v2.toml:/var/lib/besu/traces-limits.toml:ro
|
|
|
|
linea-besu-sequencer-plugin-downloader:
|
|
command: [ "sh", "/file-downloader.sh", "https://github.com/Consensys/linea-sequencer/releases/download/v0.8.0-rc4.1/linea-sequencer-v0.8.0-rc4.1.jar", "/linea-besu-sequencer" ]
|
|
|
|
traces-node:
|
|
command: ['echo', 'forced exit as replaced by traces-node-v2']
|
|
|
|
traces-api:
|
|
command: ['echo', 'forced exit as replaced by traces-node-v2']
|
|
|
|
traces-node-v2:
|
|
hostname: traces-node-v2
|
|
container_name: traces-node-v2
|
|
image: consensys/linea-besu:24.9-delivery32
|
|
profiles: [ "l2", "l2-bc", "debug", "external-to-monorepo" ]
|
|
depends_on:
|
|
traces-node-v2-plugin-downloader:
|
|
condition: service_completed_successfully
|
|
sequencer:
|
|
condition: service_healthy
|
|
ports:
|
|
- "8745:8545"
|
|
- "8746:8546"
|
|
- "8750:8550"
|
|
- "8751:8548"
|
|
- "30308:30303"
|
|
healthcheck:
|
|
test: [ "CMD-SHELL", "bash -c \"[ -f /tmp/pid ]\"" ]
|
|
interval: 1s
|
|
timeout: 1s
|
|
retries: 120
|
|
restart: "no"
|
|
environment:
|
|
JAVA_OPTS: -XX:+UnlockExperimentalVMOptions -XX:-UseG1GC -XX:+UseZGC
|
|
LOG4J_CONFIGURATION_FILE: /var/lib/besu/log4j.xml
|
|
entrypoint:
|
|
- /bin/bash
|
|
- -c
|
|
- |
|
|
/opt/besu/bin/besu-untuned \
|
|
--config-file=/var/lib/besu/traces-node-v2.config.toml \
|
|
--genesis-file=/var/lib/besu/genesis.json \
|
|
--bootnodes=enode://14408801a444dafc44afbccce2eb755f902aed3b5743fed787b3c790e021fef28b8c827ed896aa4e8fb46e22bd67c39f994a73768b4b382f8597b0d44370e15d@11.11.11.101:30303
|
|
volumes:
|
|
- ./config/traces-node-v2/traces-node-v2-config.toml:/var/lib/besu/traces-node-v2.config.toml:ro
|
|
- ./config/traces-node-v2/log4j.xml:/var/lib/besu/log4j.xml:ro
|
|
- ./config/linea-local-dev-genesis-PoA-besu.json/:/var/lib/besu/genesis.json:ro
|
|
- ../tmp/traces-node-v2/plugins:/opt/besu/plugins/
|
|
- ../tmp/local/:/data/:rw
|
|
networks:
|
|
linea:
|
|
ipv4_address: 11.11.11.115
|
|
|
|
prover:
|
|
command: ['echo', 'forced exit as replaced by prover-v3']
|
|
|
|
prover-v3: # prover compatible with the traces from zkbesu
|
|
container_name: prover-v3
|
|
hostname: prover-v3
|
|
image: consensys/linea-prover:${PROVER_TAG:-bba9677}
|
|
platform: linux/amd64
|
|
# to avoid spinning up on CI for now
|
|
profiles: [ "l2" ]
|
|
environment:
|
|
GOMAXPROCS: 16
|
|
CONFIG_FILE: "/opt/linea/prover/config.toml"
|
|
GOMEMLIMIT: "10GiB"
|
|
WORKER_ID: prover-i1 # keep this prover- to mimic prod env prover-aggregation-91
|
|
volumes:
|
|
- ../tmp/local/:/data/
|
|
- logs:/logs
|
|
- ./config/prover/v3/prover-config.toml:/opt/linea/prover/config.toml:ro
|
|
- ../prover/prover-assets:/opt/linea/prover/prover-assets:ro
|
|
networks:
|
|
linea:
|
|
ipv4_address: 11.11.11.109
|
|
|
|
traces-node-v2-plugin-downloader:
|
|
image: busybox:1.36.1
|
|
# profiles: ["l2", "l2-bc"] this works locally but breakes on CI, maybe Docker compose version issue
|
|
command: [ "sh", "/file-downloader.sh", "https://github.com/Consensys/linea-tracer/releases/download/v0.8.0-rc3/linea-tracer-v0.8.0-rc3.jar", "/traces-node-v2" ]
|
|
volumes:
|
|
- ./scripts/file-downloader.sh:/file-downloader.sh:ro
|
|
- ../tmp/traces-node-v2/plugins:/traces-node-v2/
|
|
|
|
coordinator:
|
|
# ./gradlew :coordinator:app:shadowJar
|
|
# docker build coordinator --build-context=jar=./coordinator/app/build/libs/ -t local/linea-coordinator:latest
|
|
# image: local/linea-coordinator:latest
|
|
command: [ 'java', '-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005','-Dvertx.configurationFile=/var/lib/coordinator/vertx-options.json', '-Dlog4j2.configurationFile=/var/lib/coordinator/log4j2-dev.xml', '-jar', 'libs/coordinator.jar', '--traces-limits-v2', 'config/traces-limits-v2.toml', '--smart-contract-errors', 'config/smart-contract-errors.toml', '--gas-price-cap-time-of-day-multipliers', 'config/gas-price-cap-time-of-day-multipliers.toml', 'config/coordinator-docker.config.toml', 'config/coordinator-docker-traces-v2-override.config.toml' ]
|
|
# command: ['echo', 'forced exit to run coordinator in debug mode in IntelliJ']
|
|
ports:
|
|
# Attach the IDE's remote java debugger to localhost:5005 to debug coordinator
|
|
- "5005:5005"
|
|
volumes:
|
|
- ../config/common/traces-limits-v2.toml:/opt/consensys/linea/coordinator/config/traces-limits-v2.toml:ro
|
|
- ../config/coordinator/coordinator-docker-traces-v2-override.config.toml:/opt/consensys/linea/coordinator/config/coordinator-docker-traces-v2-override.config.toml:ro
|
|
- ../tmp/local/:/data/
|
|
|
|
zkbesu-shomei:
|
|
environment:
|
|
JAVA_OPTS: -XX:+UnlockExperimentalVMOptions -XX:-UseG1GC -XX:+UseZGC
|
|
|
|
l1-el-node:
|
|
environment:
|
|
JAVA_OPTS: -XX:+UnlockExperimentalVMOptions -XX:-UseG1GC -XX:+UseZGC
|