version: '3' volumes: prometheus-data: driver: local prometheus-config: driver: local monitoring-grafana-data: driver: local loki_config: driver: local loki_data: driver: local promtail_config: driver: local services: promtail: image: grafana/promtail:latest container_name: monitoring-promtail volumes: - /var/log:/var/log - /var/lib/docker/containers:/var/lib/docker/containers - promtail_config:/etc/promtail-config command: -config.file=/etc/promtail-config/promtail.yml restart: unless-stopped loki: image: grafana/loki:latest container_name: monitoring-loki ports: - "3100:3100" command: -config.file=/etc/loki/local-config.yaml volumes: - loki_config:/etc/loki - loki_data:/data/loki restart: unless-stopped node-exporter: image: prom/node-exporter container_name: monitoring-node-exporter volumes: - /proc:/host/proc:ro - /sys:/host/sys:ro command: - '--path.procfs=/host/proc' - '--path.sysfs=/host/sys' - --collector.filesystem.ignored-mount-points - "^/(sys|proc|dev|host|etc|rootfs/var/lib/docker/containers|rootfs/var/lib/docker/overlay2|rootfs/run/docker/netns|rootfs/var/lib/docker/aufs)($$|/)" ports: - 9100:9100 restart: unless-stopped cadvisor: image: google/cadvisor:latest container_name: monitoring-cadvisor ports: - "8099:8080" volumes: - /:/rootfs:ro - /var/run:/var/run:ro - /sys:/sys:ro - /var/lib/docker/:/var/lib/docker:ro - /dev/disk/:/dev/disk:ro restart: unless-stopped devices: - /dev/kmsg prometheus: image: prom/prometheus:latest container_name: monitoring-prometheus ports: - "9090:9090" volumes: - prometheus-config:/etc/prometheus - prometheus-data:/prometheus restart: unless-stopped command: - "--config.file=/etc/prometheus/prometheus.yml" grafana: image: grafana/grafana-oss:latest container_name: monitoring-grafana ports: - "3090:3000" volumes: - monitoring-grafana-data:/var/lib/grafana restart: unless-stopped