deploy/docker/docker-compose.monitoring.yml
name: elemo
networks:
default:
name: elemo-network
services:
otel_collector:
image: otel/opentelemetry-collector-contrib:0.70.0
container_name: elemo-otel-collector
command:
- "--config=/etc/otel-collector-config.yaml"
volumes:
- ./otel/collector-config.yaml:/etc/otel-collector-config.yaml
ports:
- "4318:4318"
jaeger:
image: jaegertracing/all-in-one:latest
container_name: elemo-jaeger
depends_on:
otel_collector:
condition: service_started
ports:
- "16686:16686"
- "14250:14250"
prometheus:
image: prom/prometheus:latest
container_name: elemo-prometheus
command:
- --config.file=/etc/prometheus.yaml
- --web.enable-remote-write-receiver
- --enable-feature=exemplar-storage
depends_on:
otel_collector:
condition: service_started
volumes:
- ./prometheus/prometheus.yaml:/etc/prometheus.yaml
ports:
- "9090:9090"
grafana:
image: grafana/grafana:latest
container_name: elemo-grafana
depends_on:
jaeger:
condition: service_started
prometheus:
condition: service_started
volumes:
- ./grafana/grafana-datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml
environment:
- GF_AUTH_ANONYMOUS_ENABLED=true
- GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
- GF_AUTH_DISABLE_LOGIN_FORM=true
- GF_FEATURE_TOGGLES_ENABLE=traceqlEditor
ports:
- "8000:3000"