volumes: prometheus_data: {} grafana_data: {} influxdb_data: {} networks: front-tier: back-tier: proxy_tier: name: proxy_tier external: true services: fritz-exporter: image: pdreker/fritz_exporter:2 container_name: fritz-exporter restart: always environment: FRITZ_HOSTNAME: '192.168.178.1' FRITZ_USERNAME: 'fritz9297' FRITZ_PASSWORD: 'VeNuocNuocVe26!' ports: - "9787:9787" networks: - back-tier prometheus: image: prom/prometheus:latest volumes: - ./prometheus/:/etc/prometheus/ - prometheus_data:/prometheus - ./web.yml:/etc/config/web.yml command: - '--config.file=/etc/prometheus/prometheus.yml' - '--storage.tsdb.path=/prometheus' - '--web.console.libraries=/usr/share/prometheus/console_libraries' - '--web.console.templates=/usr/share/prometheus/consoles' # - '--web.config.file=/etc/config/web.yml' ports: - 9090:9090 networks: - back-tier restart: always # deploy: # placement: # constraints: # - node.hostname == ${HOSTNAME} grafana: image: grafana/grafana user: "472" depends_on: - prometheus ports: - 3300:3000 expose: - "3000" volumes: - grafana_data:/var/lib/grafana - ./grafana/provisioning/:/etc/grafana/provisioning/ env_file: - ./grafana/config.monitoring networks: - back-tier - front-tier - proxy_tier restart: always labels: - "traefik.enable=true" # HTTP to HTTPS Redirect - "traefik.http.routers.grafana.entrypoints=websecure" - "traefik.http.routers.grafana.rule=Host(`grafana.quangkhai.ch`)" - "traefik.http.routers.grafana.tls.certresolver=myresolver" - "traefik.http.services.grafana.loadbalancer.server.port=3000" - "traefik.docker.network=proxy_tier"