sthuber90/speedtest
Run Ookla's speedtest CLI to regularly test your local internet connection from a Docker ARMv7 compatible container. The results of the speed test are intended to be forwarded to an InfluxDB and visualized in a Chronograf dashboard.
The results of the speed test will vary, depending on what else is going on in your network. Such as other downloads, uploads, or streams taking place within your network during a test.
Take note, that running the speedtest container means, that you accept the Speedtest CLI's license and privacy regulations.
Image is based on Alpine Linux.
If, for whatever reason, the speed test fails or gets aborted - in case there has been no response received within 5 minutes - the script will classify that as "no internet connection is available". In this case, the script will store 0 Mbit/s for the download and upload speed and 100% packet loss in the InfluxDB. For latency and jitter no values get written to the InfluxDB in this case.
Variables | Default | Function |
---|---|---|
INFLUXDB_DB | speedtest | Database table to store the speed test results in. MUST be the same table name provided to the InfluxDB container. |
TEST_INTERVAL | 900 | Time in seconds until the speed test script is run again. Default is 15 minutes. May not be smaller than 5 minutes. |
version: '2'
services:
influxdb:
image: influxdb
container_name: influxdb
restart: unless-stopped
ports:
- '8086:8086'
environment:
INFLUXDB_DB: speedtest
chronograf:
image: chronograf
container_name: chronograf
restart: unless-stopped
ports:
- '8888:8888'
environment:
INFLUXDB_URL: http://influxdb:8086
links:
- influxdb
depends_on:
- influxdb
speedtest:
image: sthuber90/speedtest
container_name: speedtest
restart: unless-stopped
environment:
INFLUXDB_DB: speedtest
TEST_INTERVAL: 900
links:
- influxdb
depends_on:
- influxdb
Source Code on GitHub: https://github.com/sthuber90/docker-speedtest
docker pull sthuber90/speedtest