Scrutiny

Scrutiny

Hard Drive S.M.A.R.T Monitoring

Hard Drive S.M.A.R.T Monitoring, Historical Trends & Real World Failure Thresholds

📜 Source: https://github.com/AnalogJ/scrutiny

In addition to the Omnibus image (available under the latest tag) you can deploy in Hub/Spoke mode. Details: https://github.com/AnalogJ/scrutiny/blob/master/docker/example.hubspoke.docker-compose.yml

name: scrutiny
services:
  scrutiny-influxdb:
    image: influxdb:2.7
    container_name: scrutiny-influxdb
    restart: unless-stopped
    networks:
      - proxy
    volumes:
      - ${DOCKER_VOLUMES}/scrutiny/influxdb:/var/lib/influxdb2
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8086/health"]
      interval: 15s
      timeout: 10s
      retries: 20

  scrutiny-web:
    image: 'ghcr.io/analogj/scrutiny:master-web'
    container_name: scrutiny-web
    restart: unless-stopped
    networks:
      - proxy
    volumes:
      - ${DOCKER_VOLUMES}/scrutiny/config:/opt/scrutiny/config
    environment:
      SCRUTINY_WEB_INFLUXDB_HOST: 'scrutiny-influxdb'
    depends_on:
      scrutiny-influxdb:
        condition: service_healthy
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/api/health"]
      interval: 15s
      timeout: 10s
      retries: 20
      start_period: 10s
    labels:
      traefik.enable: true
      traefik.http.routers.scrutiny.entrypoints: websecure
      traefik.http.routers.scrutiny.middlewares: https-local@file
      traefik.http.routers.scrutiny.rule: Host(`scrutiny.${MYDOMAIN}`)
      traefik.http.services.scrutiny.loadbalancer.server.port: 8080
      homepage.group: Monitoring
      homepage.name: Scrutiny
      homepage.icon: scrutiny.png
      homepage.href: https://scrutiny.${MYDOMAIN}/
      homepage.description: Hard Drive S.M.A.R.T Monitoring

networks:
  proxy:
    external: true