version: "2.4" services: clickhouse: image: altinity/clickhouse-server:21.12.3.32.altinitydev.arm volumes: - ./clickhouse-config.xml:/etc/clickhouse-server/config.xml restart: on-failure logging: options: max-size: 50m max-file: "3" healthcheck: # "clickhouse", "client", "-u ${CLICKHOUSE_USER}", "--password ${CLICKHOUSE_PASSWORD}", "-q 'SELECT 1'" test: ["CMD", "wget", "--spider", "-q", "localhost:8123/ping"] interval: 30s timeout: 5s retries: 3 alertmanager: image: signoz/alertmanager:0.6.0 depends_on: - query-service restart: on-failure command: - --queryService.url=http://query-service:8080 - --storage.path=/data query-service: image: signoz/query-service:latest container_name: query-service command: ["-config=/root/config/prometheus.yml"] volumes: - ./prometheus.yml:/root/config/prometheus.yml - ../dashboards:/root/config/dashboards - ./data:/var/lib/signoz ports: - "8180:8080" environment: - ClickHouseUrl=tcp://clickhouse:9000 - STORAGE=clickhouse - GODEBUG=netdns=go - TELEMETRY_ENABLED=true healthcheck: test: ["CMD", "wget", "--spider", "-q", "localhost:8080/api/v1/version"] interval: 30s timeout: 5s retries: 3 depends_on: clickhouse: condition: service_healthy otel-collector: image: signoz/otelcontribcol:0.43.0 command: ["--config=/etc/otel-collector-config.yaml"] volumes: - ./otel-collector-config.yaml:/etc/otel-collector-config.yaml ports: - "4317:4317" # OTLP GRPC receiver mem_limit: 2000m restart: always depends_on: clickhouse: condition: service_healthy otel-collector-metrics: image: signoz/otelcontribcol:0.43.0 command: ["--config=/etc/otel-collector-metrics-config.yaml"] volumes: - ./otel-collector-metrics-config.yaml:/etc/otel-collector-metrics-config.yaml depends_on: clickhouse: condition: service_healthy hotrod: image: jaegertracing/example-hotrod:1.30 container_name: hotrod logging: options: max-size: 50m max-file: "3" command: ["all"] environment: - JAEGER_ENDPOINT=http://otel-collector:14268/api/traces load-hotrod: image: "grubykarol/locust:1.2.3-python3.9-alpine3.12" container_name: load-hotrod hostname: load-hotrod environment: ATTACKED_HOST: http://hotrod:8080 LOCUST_MODE: standalone NO_PROXY: standalone TASK_DELAY_FROM: 5 TASK_DELAY_TO: 30 QUIET_MODE: "${QUIET_MODE:-false}" LOCUST_OPTS: "--headless -u 10 -r 1" volumes: - ../../../../deploy/docker/common/locust-scripts:/locust