64 lines
1.4 KiB
YAML
64 lines
1.4 KiB
YAML
name: otel-server
|
|
|
|
services:
|
|
otel-server:
|
|
container_name: otel-gateway
|
|
image: ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-contrib:0.140.0
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./config/otel:/data
|
|
command:
|
|
- --config
|
|
- /data/config.yml
|
|
networks:
|
|
- proxy
|
|
- otel
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=proxy"
|
|
- "traefik.http.routers.otel.rule=Host(`otel.example.com`)"
|
|
- "traefik.http.routers.otel.entrypoints=websecure"
|
|
- "traefik.http.routers.otel.service=otel"
|
|
- "traefik.http.services.otel.loadBalancer.server.port=4318"
|
|
|
|
grafana:
|
|
container_name: grafana
|
|
image: grafana/grafana:12.0.2
|
|
restart: unless-stopped
|
|
user: 1000:1000
|
|
networks:
|
|
- grafana
|
|
volumes:
|
|
- ./config/grafana:/etc/grafana
|
|
- ./data/grafana:/var/lib/grafana
|
|
depends_on:
|
|
- otel
|
|
|
|
loki:
|
|
container_name: grafana-loki
|
|
image: grafana/loki:3.5.2
|
|
restart: unless-stopped
|
|
networks:
|
|
- grafana
|
|
volumes:
|
|
- ./config/loki:/etc/loki
|
|
- ./data/loki:/tmp/loki
|
|
|
|
tempo:
|
|
container_name: grafana-loki
|
|
image: grafana/tempo:latest
|
|
volumes:
|
|
- ./config/tempo:/etc/tempo
|
|
- ./data/tempo:/var/tempo
|
|
command:
|
|
- "-config.file=/etc/tempo/config.yaml"
|
|
depends_on:
|
|
- init
|
|
|
|
networks:
|
|
proxy:
|
|
name: proxy
|
|
external: true
|
|
otel:
|
|
name: otel
|