Skip to content

Instantly share code, notes, and snippets.

@crazy-max
Created January 17, 2022 07:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save crazy-max/f5c563b09ea9d0068e4e34c50fd3daa4 to your computer and use it in GitHub Desktop.
Save crazy-max/f5c563b09ea9d0068e4e34c50fd3daa4 to your computer and use it in GitHub Desktop.
Speedtest + Grafana
INFLUXDB_VERSION=1.7.10
GRAFANA_VERSION=7.3.7
SPEEDTEST_VERSION=1.1.0
INFLUXDB_ADMIN_USER=
INFLUXDB_ADMIN_PASSWORD=
INFLUXDB_DB=speedtest
GF_SECURITY_ADMIN_PASSWORD=
INTERVAL=3600
SPEEDTEST_LIST_SERVERS=false
#SPEEDTEST_SERVER=par07
version: "3.5"
services:
influxdb:
image: influxdb:${INFLUXDB_VERSION}
container_name: st_influxdb
networks:
- speedtest
volumes:
- "./influxdb:/var/lib/influxdb"
environment:
- "INFLUXDB_ADMIN_USER"
- "INFLUXDB_ADMIN_PASSWORD"
- "INFLUXDB_DB"
restart: always
grafana:
image: grafana/grafana:${GRAFANA_VERSION}
container_name: st_grafana
networks:
- web
- speedtest
depends_on:
- influxdb
volumes:
- "./grafana/provisioning:/etc/grafana/provisioning"
- "./grafana/data:/var/lib/grafana"
labels:
- "traefik.enable=true"
- "traefik.http.routers.speedtest.entrypoints=https"
- "traefik.http.routers.speedtest.rule=Host(`speedtest.${DOMAIN_NET}`)"
- "traefik.http.routers.speedtest.middlewares=lan-whitelist@file"
- "traefik.http.routers.speedtest.tls=true"
- "traefik.http.services.speedtest.loadbalancer.server.port=3000"
environment:
- "GF_SECURITY_ADMIN_PASSWORD"
- "GF_SERVER_ROOT_URL=http://localhost"
- "GF_AUTH_ANONYMOUS_ENABLED=true"
restart: always
speedtest:
image: quadstingray/speedtest-influxdb:${SPEEDTEST_VERSION}
container_name: speedtest
networks:
- speedtest
depends_on:
- influxdb
environment:
- "INTERVAL"
- "SPEEDTEST_LIST_SERVERS"
- "SPEEDTEST_SERVER"
- "HOST=${DOMAIN_NET}"
- "INCLUDE_READABLE_OUTPUT=true"
- "SHOW_EXTERNAL_IP=true"
- "INFLUXDB_USE=true"
- "INFLUXDB_URL=http://influxdb:8086"
- "INFLUXDB_DB"
- "INFLUXDB_USER=${INFLUXDB_ADMIN_USER}"
- "INFLUXDB_PWD=${INFLUXDB_ADMIN_PASSWORD}"
restart: always
networks:
web:
external: true
speedtest:
name: speedtest
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment