otlp-monitoring/docker-compose.yml

107 lines
3.0 KiB
YAML
Raw Normal View History

2024-12-23 13:27:44 +08:00
version: "3.9"
services:
grafana:
image: ${GRAFANA_IMAGE}
container_name: ${GRAFANA_CONTAINER_NAME}
2024-12-23 13:40:59 +08:00
hostname: ${GRAFANA_CONTAINER_NAME}
2024-12-23 13:27:44 +08:00
restart: always
environment:
- GF_PATHS_DATA=/var/lib/grafana/data
- GF_PATHS_LOGS=/var/log/grafana
- GF_PATHS_PLUGINS=/var/lib/grafana/plugins
- GF_PATHS_PROVISIONING=/etc/grafana/provisioning
- GF_AUTH_ANONYMOUS_ENABLED=false
- GF_USERS_ALLOW_SIGN_UP=false
- GF_USERS_ALLOW_ORG_CREATE=false
- GF_SERVER_ROOT_URL=/grafana
# - GF_SERVE_FROM_SUB_PATH=true
volumes:
## - ./configs/grafana-configs/grafana.ini:/etc/grafana/grafana.ini
# - ./configs/grafana-configs/ldap.toml:/etc/grafana/ldap.toml
- ./configs/grafana-configs/datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml
- ./data/grafana-backup:/backup
- ./data/grafana-storage:/var/lib/grafana
ports:
- 3000:3000
networks:
- loki
- proxy
loki:
image: ${LOKI_IMAGE}
container_name: ${LOKI_CONTAINER_NAME}
2024-12-23 13:40:59 +08:00
hostname: ${LOKI_CONTAINER_NAME}
2024-12-23 13:27:44 +08:00
restart: always
command: -config.file=/etc/loki/local-config.yaml
volumes:
- ./data/loki-storage:/loki
- ./configs/loki-configs/local-config.yaml:/etc/loki/local-config.yaml
ports:
- 3100:3100
- 9095:9095
networks:
- loki
- proxy
prometheus:
image: ${PROMETHEUS_IMAGE}
container_name: ${PROMETHEUS_CONTAINER_NAME}
2024-12-23 13:40:59 +08:00
hostname: ${PROMETHEUS_CONTAINER_NAME}
2024-12-23 13:27:44 +08:00
restart: always
environment:
TZ: "Asia/Irkutsk"
volumes:
- ./data/prometheus-storage:/prometheus
- ./configs/prometheus-configs/prometheus.yaml:/etc/prometheus/prometheus.yaml
command:
- '--config.file=/etc/prometheus/prometheus.yaml'
- '--storage.tsdb.retention.time=15d'
ports:
- 9090:9090
networks:
- loki
- proxy
2024-12-23 19:48:02 +08:00
tempo:
2025-05-15 13:37:59 +08:00
image: ${TEMPO_IMAGE}
container_name: ${TEMPO_CONTAINER_NAME}
hostname: ${TEMPO_CONTAINER_NAME}
2024-12-23 19:48:02 +08:00
user: "1000"
restart: always
volumes:
- ./config/tempo/tempo.yaml:/etc/tempo.yaml
2024-12-23 20:41:55 +08:00
- ./data/tempo-storage:/tmp/tempo
2024-12-23 19:48:02 +08:00
command:
- '--config.file=etc/tempo.yaml'
2025-05-15 13:37:59 +08:00
ports:
- "4317:4317" # otlp grpc.
- "3200:3200" # native port for Grafana data source
2024-12-23 19:48:02 +08:00
networks:
- loki
- proxy
2024-12-23 13:27:44 +08:00
2024-12-23 19:48:02 +08:00
otel-collector:
image: ${OTEL-COLLECTOR_IMAGE}
container_name: ${OTEL-COLLECTOR_CONTAINER_NAME}
hostname: ${OTEL-COLLECTOR_CONTAINER_NAME}
2024-12-23 20:41:55 +08:00
command:
- '--config=/etc/otel-collector-config.yaml'
2024-12-23 19:48:02 +08:00
volumes:
- ./configs/otel-collector-configs/config.yaml:/etc/otel-collector-config.yaml
ports:
# - "8888:8888" # Prometheus metrics exposed by the collector for scrape
- "8889:8889" # Prometheus exporter metrics
- "13133:13133" # health_check extension
- "4317:4317" # OTLP gRPC receiver
- "4318:4318" # OTLP http receiver
networks:
- loki
- proxy
2024-12-23 13:27:44 +08:00
networks:
loki:
name: loki
proxy:
name: proxy