--- services: prometheus: image: prom/prometheus container_name: prometheus command: - '--config.file=/etc/prometheus/prometheus.yml' ports: - 9090:9090 restart: unless-stopped volumes: - ./configs/prometheus.yml:/etc/prometheus/prometheus.yml - ./configs/prometheus_alerts.rules.yaml:/etc/prometheus/rules/alerts.rules.yaml - prom_data:/prometheus alertmanager: image: prom/alertmanager container_name: alertmanager command: - '--config.file=/etc/alertmanager/alertmanager.yaml' ports: - 9093:9093 restart: unless-stopped volumes: - ./configs/alertmanager.yaml:/etc/alertmanager/alertmanager.yaml - ./configs/alertmanager_alert_templates.tmpl:/etc/alertmanager/templates/alert_templates.tmpl - alertmanager_data:/alertmanager grafana: image: grafana/grafana container_name: grafana ports: - 3000:3000 restart: unless-stopped environment: - GF_SECURITY_ADMIN_USER=admin - "GF_SECURITY_ADMIN_PASSWORD={{ lookup("community.general.passwordstore", "noc/vm-secrets/chaosknoten/grafana/GF_SECURITY_ADMIN_PASSWORD", create=false, missing="error") }}" volumes: - ./configs/grafana.ini:/etc/grafana/grafana.ini - ./configs/grafana-datasource.yml:/etc/grafana/provisioning/datasources/datasource.yml - graf_data:/var/lib/grafana pve-exporter: image: prompve/prometheus-pve-exporter container_name: pve-exporter ports: - 9221:9221 restart: unless-stopped environment: - PVE_USER=grafana@pve - "PVE_PASSWORD={{ lookup("community.general.passwordstore", "noc/vm-secrets/chaosknoten/grafana/prometheus-exporter", create=false, missing="error") }}" - PVE_VERIFY_SSL=false volumes: - /dev/null:/etc/prometheus/pve.yml volumes: graf_data: {} prom_data: {} alertmanager_data: {}