--- - name: Deploy Prometheus include_role: name: docker vars: name: prometheus directories: - "{{ data_dir }}/monitoring" - "{{ data_dir }}/monitoring/grafana" - "{{ data_dir }}/monitoring/prometheus" image: name: prom/prometheus tag: latest volumes: - "{{ data_dir }}/monitoring/prometheus:/etc/prometheus" labels: traefik.enable: "true" traefik.http.routers.prom.rule: Host(`prom.fntz.net`) traefik.http.routers.prom.entrypoints: webSecure traefik.http.routers.prom.tls.certresolver: letsencrypt traefik.http.services.prom.loadbalancer.server.port: "9090" - name: Deploy Node Exporter include_role: name: docker vars: name: node-exporter image: name: prom/node-exporter tag: latest command: - "--path.rootfs=host" network_mode: host pid_mode: host volumes: - "/:/host:ro,rslave" - name: Deploy Grafana include_role: name: docker vars: name: grafana image: name: grafana/grafana tag: latest volumes: - "{{ data_dir }}/monitoring/grafana" env: GF_AUTH_ANONYMOUS_ENABLED: "{{ GRAFANA_AUTH_ANONYMOUS_ENABLED }}" labels: traefik.enable: "true" traefik.http.routers.grafana.rule: Host(`grafana.fntz.net`) traefik.http.routers.grafana.entrypoints: webSecure traefik.http.routers.grafana.tls.certresolver: letsencrypt traefik.http.services.grafana.loadbalancer.server.port: "3000"