This project is a few things, the major parts being a Pi-hole extension and a speedtest runner. Install the Speedtest Mod in a breeze with the one-liners and Docker images below.
The Test Script is a standalone tool that can be used to run speedtests on automated Debian or Fedora based systems. It will install a speedtest CLI if one hasn't been, run a test, and save the results to a new or existing database. You can use it to test your connection, monitor your ISP, or check the speed of your VPN. Let us know how you're using it! See usage for details.
curl -sSL https://github.com/arevindh/pihole-speedtest/raw/master/test | sudo bash -s -- -o ~/speedtest.db
Please keep in mind that the more tests you run, the more data will be used, and any issues about weird results should be directed to the maintainers of whichever speedtest CLI is installed on your system, not here.
The Mod allows you to use the Test Script and run speedtests right from the Pi-hole web UI! Install, set a testing interval and customize the chart in Settings, kick back, and watch the results come in on the Dashboard. Other features include:
- Run tests ad-hoc
- Export data as CSV
- View status, logs, and servers
- Flush or restore the database
- Select speedtest server
The Mod Script is our installation manager; it automates the process of applying our patches. It supports Debian, Fedora, and derivatives with and without systemd
. Docker, too! You can use it to quickly try out the Mod and uninstall it if you don't like it. For information about running Pi-hole in Docker, including a Compose example, please refer to the official repo and docs. Post-install instructions are below.
You can just pipe to bash:
curl -sSL https://github.com/arevindh/pihole-speedtest/raw/master/mod | sudo bash
The above goes for Docker as well. We use the Dockerfile in this repo to build an image with the Mod Script already applied. Simply change the image you're using to ours and proceed as usual. It's a drop-in replacement.
ghcr.io/arevindh/pihole-speedtest:latest
You can also run the Mod Script inside every new container yourself. For example, if you're using Compose, by replacing the image
line with:
build:
dockerfile_inline: |
FROM pihole/pihole:latest
RUN curl -sSL https://github.com/arevindh/pihole-speedtest/raw/master/mod | sudo bash
Then pull and rebuild without cache:
docker compose pull; docker compose down; docker compose build --no-cache; docker compose up -d
After installation, the Mod will use the Test Script to mediately install Ookla's official speedtest
, unless you already have speedtest-cli
or librespeed-cli
installed as /usr/bin/speedtest
. You can install and switch between all of these with the Mod Script's -s
option. Please refer to our wiki to see how to use this option and what others are available. Should any of the CLI packages fail at runtime, the others will be tried.
Further Instructions: Updating | Uninstalling
Buy @arevindh a ☕️ if you like this project :)
@ipitio is not accepting donations at this time, but a star is always appreciated!