version: '3' volumes: alertmanager_config: driver: local driver_opts: type: nfs o: addr=dockerstorage,rw,nfsvers=4 device: :/swarm/stacks/grafana/alertmanager_config prometheus_config: driver_opts: type: nfs o: addr=dockerstorage,nfsvers=4 device: :/swarm/stacks/grafana/prometheus_config grafana_config: driver_opts: type: nfs o: addr=dockerstorage,nfsvers=4 device: :/swarm/stacks/grafana/grafana_config prometheus_data: driver_opts: type: nfs o: addr=dockerstorage,nfsvers=4 device: :/swarm/stacks/grafana/prometheus_data grafana_data: driver_opts: type: nfs o: addr=dockerstorage,nfsvers=4 device: :/swarm/stacks/grafana/grafana_data loki_data: driver_opts: type: nfs o: addr=dockerstorage,nfsvers=4 device: :/swarm/stacks/grafana/loki_data influxdb_data: driver_opts: type: nfs o: addr=dockerstorage,nfsvers=4 device: :/swarm/stacks/grafana/influxdb_data services: # redis: # loki: image: grafana/loki:2.6.1 user: "0:0" volumes: - loki_data:/loki ports: - "3100:3100" command: -config.file=/etc/loki/local-config.yaml promtail: image: grafana/promtail:2.6.1 user: "0:0" volumes: - /var/log:/var/log command: -config.file=/etc/promtail/config.yml influx: user: "0:0" image: influxdb volumes: - influxdb_data:/var/lib/influxdb alertmanager: user: "0:0" hostname: alertmanager image: prom/alertmanager environment: - TZ=Europe/Berlin #change Time Zone if needed volumes: - alertmanager_config:/etc/alertmanager command: - '--config.file=/etc/alertmanager/alertmanager.conf' ports: - 9093:9093 prometheus: user: "0:0" hostname: prometheus image: prom/prometheus environment: - TZ=Europe/Berlin #change Time Zone if needed volumes: - prometheus_config:/etc/prometheus - prometheus_data:/prometheus command: - '--config.file=/etc/prometheus/prometheus.yml' links: - alertmanager:alertmanager ports: - 9090:9090 grafana: user: "0:0" hostname: grafana image: grafana/grafana depends_on: - influx environment: - TZ=Europe/Amsterdam volumes: - grafana_config:/etc/grafana - grafana_data:/var/lib/grafana ports: - 3300:3000