version: '3.8' services: open-meteo-service: build: context: . dockerfile: Dockerfile image: open-meteo-service:local container_name: open-meteo-service ports: - "8000:8000" networks: - monitoring prometheus: image: prom/prometheus:latest container_name: prometheus ports: - "9090:9090" volumes: - ./prometheus.yml:/etc/prometheus/prometheus.yml - prometheus_data:/prometheus command: - "--config.file=/etc/prometheus/prometheus.yml" - "--storage.tsdb.path=/prometheus" networks: - monitoring depends_on: - open-meteo-service grafana: image: grafana/grafana:latest container_name: grafana ports: - "3000:3000" environment: - GF_SECURITY_ADMIN_PASSWORD=admin - GF_SECURITY_ADMIN_USER=admin volumes: - grafana_data:/var/lib/grafana - ./grafana/provisioning:/etc/grafana/provisioning - ./grafana/dashboards:/var/lib/grafana/dashboards networks: - monitoring depends_on: - prometheus networks: monitoring: driver: bridge volumes: prometheus_data: grafana_data: