version: '3.9' services: grafana: image: grafana/grafana:8.4.5 container_name: grafana restart: unless-stopped volumes: - '/home/nick/configs/analytics/grafana:/var/lib/grafana' environment: - 'GF_SECURITY_ALLOW_EMBEDDING=true' - 'GF_SMTP_ENABLED=true' - 'GF_SMTP_HOST=${SMTP_HOST}' - 'GF_SMTP_USER=${SMTP_USER}' - 'GF_SMTP_PASSWORD=${SMTP_PASSWORD}' - 'GF_SMTP_FROM_ADDRESS=${SMTP_FROM}' - 'GF_RENDERING_SERVER_URL=http://grafana_image_renderer:8081/render' - 'GF_RENDERING_CALLBACK_URL=http://grafana:3000' - 'GF_LOG_FILTERS=rendering:debug' - 'GF_SERVER_ROOT_URL=${GF_ROOT}' - 'GF_SERVER_DOMAIN=${GF_DOMAIN}' - 'GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-worldmap-panel' - 'GF_AUTH_PROXY_ENABLED=true' - 'GF_AUTH_PROXY_HEADER_NAME=Remote-User' - 'GF_AUTH_PROXY_HEADERS=Name:Remote-Name Email:Remote-Email' networks: - proxy - grafana user: "1000:1000" depends_on: - grafana_image_renderer grafana_image_renderer: image: grafana/grafana-image-renderer container_name: grafana_image_renderer restart: unless-stopped networks: - grafana influxdb: image: influxdb:1.8 container_name: influxdb restart: unless-stopped volumes: - '/home/nick/configs/analytics/influxdb/influxdb.conf:/etc/influxdb/influxdb.conf' - '/home/nick/configs/analytics/influxdb/db:/var/lib/influxdb' environment: - PUID=1000 - PGID=1000 networks: - grafana telegraf: image: telegraf:1.20.4 container_name: telegraf restart: unless-stopped volumes: - '/:/hostfs:ro' - '/etc:/hostfs/etc:ro' - '/proc:/hostfs/proc:ro' - '/sys:/hostfs/sys:ro' - '/var:/hostfs/var:ro' - '/run:/hostfs/run:ro' - '/var/run/docker.sock:/var/run/docker.sock' - '/home/nick/configs/analytics/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf:ro' - '/home/nick/configs/analytics/telegraf/hostnet.sh:/etc/telegraf/hostnet.sh' environment: - HOST_ETC=/hostfs/etc - HOST_PROC=/hostfs/proc - HOST_SYS=/hostfs/sys - HOST_VAR=/hostfs/var - HOST_RUN=/hostfs/run - HOST_MOUNT_PREFIX=/hostfs networks: - grafana - proxy user: "1000:975" depends_on: - influxdb speedtest: image: atribe/speedtest-for-influxdb-and-grafana container_name: speedtest restart: unless-stopped volumes: - '/home/nick/configs/analytics/speedtest/config.ini:/src/config.ini' - '/home/nick/configs/analytics/speedtest/speedtest.py:/usr/local/lib/python3.7/site-packages/speedtest.py' environment: - PGID=1000 - PUID=1000 networks: - grafana depends_on: - influxdb speedport-smart-reconnect: image: registry.karaolidis.com/nikas36/speedport-smart-reconnect container_name: speedport_smart_reconnect restart: unless-stopped environment: - 'ROUTER_USERNAME=${ROUTER_USERNAME}' - 'ROUTER_PASSWORD=${ROUTER_PASSWORD}' networks: - grafana depends_on: - grafana - speedtest scrutiny: image: ghcr.io/analogj/scrutiny:master-omnibus container_name: scrutiny restart: unless-stopped volumes: - '/home/nick/configs/analytics/scrutiny/config:/opt/scrutiny/config' - '/home/nick/configs/analytics/scrutiny/influxdb2:/opt/scrutiny/influxdb' - '/run/udev:/run/udev:ro' environment: - 'PUID=1000' - 'PGID=1000' - 'TZ=Europe/Athens' - 'SCRUTINY_API_ENDPOINT=http://scrutiny:8080' - 'SCRUTINY_WEB=true' - 'SCRUTINY_COLLECTOR=true' ports: - 9080:8080 devices: - /dev/sda:/dev/sda - /dev/sdb:/dev/sdb - /dev/sdc:/dev/sdc - /dev/sdd:/dev/sdd - /dev/sde:/dev/sde cap_add: - SYS_RAWIO - SYS_ADMIN networks: - proxy uptime-kuma: image: louislam/uptime-kuma container_name: uptime_kuma restart: unless-stopped volumes: - /home/nick/configs/analytics/uptime-kuma:/app/data networks: - proxy dns: - 1.1.1.1 - 1.0.0.1 networks: grafana: name: grafana proxy: external: true name: proxy