Docker-AdvancedFeaturesSecu.../monitoring/docker-compose.monitoring.yml

82 lines
1.7 KiB
YAML

version: "3.9"
networks:
monitoring_net:
external: true
volumes:
grafana-data:
loki-data:
services:
cadvisor:
image: gcr.io/cadvisor/cadvisor:latest
ports:
- "8080:8080"
volumes:
- /:/rootfs:ro
- /var/run:/var/run:ro
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
networks:
- monitoring_net
deploy:
mode: global
privileged: true # biar cadvisor bisa akses semua metric container
prometheus:
image: prom/prometheus:latest
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml:ro
networks:
- monitoring_net
deploy:
replicas: 1
grafana:
image: grafana/grafana:latest
ports:
- "3000:3000"
volumes:
- grafana-data:/var/lib/grafana
- ./grafana/provisioning:/etc/grafana/provisioning
environment:
- GF_SECURITY_ADMIN_USER=syifa
- GF_SECURITY_ADMIN_PASSWORD=secret123
depends_on:
- prometheus
- loki
networks:
- monitoring_net
deploy:
replicas: 1
loki:
image: grafana/loki:2.8.2
ports:
- "3100:3100"
volumes:
- ./loki-config.yml:/etc/loki/local-config.yml:ro
- loki-data:/loki
command: -config.file=/etc/loki/local-config.yml
networks:
- monitoring_net
deploy:
replicas: 1
promtail:
image: grafana/promtail:2.8.2
volumes:
- /var/log:/var/log
- /var/lib/docker/containers:/var/lib/docker/containers:ro
- ./promtail-config.yml:/etc/promtail/config.yml:ro
command: -config.file=/etc/promtail/config.yml
depends_on:
- loki
networks:
- monitoring_net
deploy:
replicas: 1