name: signoz services: # =========================================================================== # ClickHouse — columnar storage for all telemetry data # =========================================================================== clickhouse: image: clickhouse/clickhouse-server:${CLICKHOUSE_VERSION:-25.5} restart: unless-stopped environment: CLICKHOUSE_DB: ${CLICKHOUSE_DB:-signoz} CLICKHOUSE_USER: ${CLICKHOUSE_USER:-admin} CLICKHOUSE_PASSWORD: ${CLICKHOUSE_PASSWORD:-change-me-clickhouse-password} volumes: - ./clickhouse-data:/var/lib/clickhouse healthcheck: test: wget --no-verbose --tries=1 --spider http://localhost:8123/ping || exit 1 interval: 5s timeout: 3s retries: 30 start_period: 10s networks: - signoz # =========================================================================== # SigNoz — all-in-one observability platform (query service + UI + collector) # =========================================================================== # Replaces both Alloy (OTEL collector) and LGTM (Grafana/Prometheus/Tempo/Loki). # Accepts OTLP gRPC (4317) and OTLP HTTP (4318) from all stacks. # UI on port 3301. # # Docs: https://signoz.io/docs/install/docker/ # =========================================================================== signoz: image: signoz/signoz:${SIGNOZ_VERSION:-latest} restart: unless-stopped depends_on: clickhouse: condition: service_healthy environment: SIGNOZ_TELEMETRY_STORE: clickhouse DSN: tcp://clickhouse:9000 CLICKHOUSE_USER: ${CLICKHOUSE_USER:-admin} CLICKHOUSE_PASSWORD: ${CLICKHOUSE_PASSWORD:-change-me-clickhouse-password} CLICKHOUSE_DATABASE: ${CLICKHOUSE_DB:-signoz} STORAGE: clickhouse CLICKHOUSE_ENDPOINT: tcp://clickhouse:9000 SIGNOZ_CLICKHOUSE_DSN: tcp://clickhouse:9000 ports: # SigNoz UI - ${EXPOSE_SIGNOZ_UI_PORT:-3301}:3301 # OTLP gRPC receiver - ${EXPOSE_OTLP_GRPC_PORT:-4317}:4317 # OTLP HTTP receiver - ${EXPOSE_OTLP_HTTP_PORT:-4318}:4318 volumes: - ./signoz-data:/var/lib/signoz healthcheck: test: - CMD - wget - --no-verbose - --tries=1 - --spider - http://localhost:3301/api/v1/health interval: 15s timeout: 5s retries: 10 start_period: 30s networks: signoz: {} pipeline: aliases: - signoz - otel - lgtm # swag: # aliases: # - signoz networks: signoz: name: signoz driver: bridge pipeline: name: pipeline external: true # swag: # name: swag # external: true volumes: {}