Files
dropshell-templates/simple-logs/docker-compose.yml
Your Name f114773d78
All checks were successful
Test and Publish Templates / test-and-publish (push) Successful in 40s
swtich from ELK to Loki!
2025-09-20 12:01:25 +12:00

54 lines
1.7 KiB
YAML

version: '3.8'
services:
# Grafana - Simple Web UI for viewing logs
grafana:
image: grafana/grafana:latest
container_name: ${CONTAINER_NAME}_grafana
environment:
- GF_SECURITY_ADMIN_USER=${AUTH_USERNAME:-admin}
- GF_SECURITY_ADMIN_PASSWORD=${AUTH_PASSWORD:-admin}
- GF_AUTH_ANONYMOUS_ENABLED=${AUTH_USERNAME:+false}
- GF_AUTH_ANONYMOUS_ORG_ROLE=Viewer
- GF_INSTALL_PLUGINS=
volumes:
- grafana_data:/var/lib/grafana
- ${CONFIG_PATH}/grafana-datasources.yml:/etc/grafana/provisioning/datasources/datasources.yaml:ro
- ${CONFIG_PATH}/grafana-dashboard.yml:/etc/grafana/provisioning/dashboards/dashboard.yaml:ro
- ${CONFIG_PATH}/dashboards:/var/lib/grafana/dashboards:ro
ports:
- "${WEB_PORT:-3000}:3000"
restart: unless-stopped
depends_on:
- loki
# Loki - Lightweight log storage (100x simpler than Elasticsearch)
loki:
image: grafana/loki:2.9.0
container_name: ${CONTAINER_NAME}_loki
volumes:
- loki_data:/loki
- ${CONFIG_PATH}/loki.yaml:/etc/loki/local-config.yaml:ro
ports:
- "3100:3100"
command: -config.file=/etc/loki/local-config.yaml
restart: unless-stopped
# Promtail - Collects all logs (Docker + System)
promtail:
image: grafana/promtail:2.9.0
container_name: ${CONTAINER_NAME}_promtail
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /var/log:/var/log:ro
- ${CONFIG_PATH}/promtail.yaml:/etc/promtail/config.yml:ro
- promtail_positions:/tmp/positions
command: -config.file=/etc/promtail/config.yml
restart: unless-stopped
depends_on:
- loki
volumes:
grafana_data:
loki_data:
promtail_positions: