Site Loader

How to add a speedtest (henrywhitaker3/speedtest-tracker) to Synology in a Synology Docker

If you want to monitor your internet speed, this is a great image to add to your Synology Docker.

speedtest

Note, these instructions are using DSM v7, so your screens may vary slightly.

  1. Open up your DSM
  2. Go to file station and create a new subdirectory in your Docker folder.
    If you don’t have a Docker folder, create one in the root. For organizational neatness, you can put the data files for each docker in their own folder.
  3. I used the name “henrywhitaker3-speedtest” as I might have other speed test tools.
  4. Open up docker
  5. Click on Registry on the left
  6. In the top right, search for “speedtest”
  7. Double-click on “henrywhitaker3/speedtest-tracker”
  8. Click on select with the option “latest” selected
  9. Click on Image on the left menu and wait for it to download
  10. When it is done downloaded, double-click on the new image “henrywhitaker3/speedtest-tracker”
  11. On the popup window, change the name if you desire
  12. Click on “Advanced Settings”
  13. Click the checkbox “Enable auto-restart”
  14. Click on the Volume tab
  15. Click on the Add folder button
  16. Browse to the folder you created earlier
  17. Enter “/config” in the mount path
  18. You can leave Network, Port Settings, and Links alone as defaults
  19. Click on the Environment tab and click the “Add” button
  20. On the left add the variable “OOKLA_EULA_GDPR” with the value “true”
    This accepts the user agreement
  21. Click on apply
  22. Click Next and then Done
  23. It will take about 5 minutes to get started the first time as it downloads the files necessary and sets things up
  24. If you are curious about watching it run, click on the container on the left and open the container and open the terminal
  25. You will need to know what port to use to get to the user interface, so click on the container and open the container to find the local port corresponding to port 80 (or 443 if you are using https)
  26. If all goes well, you should be able to navigate to your DSM URL and add the corresponding port and see your new speedtest in action!

Enjoy!

Post Author: Jason Goldfeder

11 Replies to “Speedtest in a Docker on Synology”

  1. Hi, this works fine. Thank you. But i have 2 questions. How can i set the interval from every 1 hour to every 30 minutes. And how can i set a default ookla speedtest server: for example philunet dusseldorf? philunet did always have enough bandwith and i can test internetspeed without server limitation. Thanks for helping. with friendly regards Willy

  2. Ad far as I am concerned, I tried several times to install it and I always have errors in the log (preventing the container to run)

    Here is the interesting part:

    Ookla GDPR and EULA accepted. Downloading Speedtest CLI.
    Connecting to install.speedtest.net (151.101.38.219:443)
    wget: error getting response: Connection reset by peer
    tar: can’t open ‘speedtest.tgz’: No such file or directory
    cp: cannot stat ‘speedtest’: No such file or directory
    s6-applyuidgid: fatal: unable to exec /site/app/Bin/speedtest: No such file or directory

    Here is what I tried to fix this issue:
    Connect onto the Synology via a SSH console and move to the directory mounted as /config. Then, exec:

    wget https://install.speedtest.net/app/cli/ookla-speedtest-1.0.0-x86_64-linux.tgz -O speedtest.tgz
    tar zxvf speedtest.tgz
    sudo chown 911 speedtest*
    sudo mv speedtest* www/app/Bin/

    Finally, restart the Container via Docker UI and wait for a while (looking at the Log until “Copying latest site files to config” is completed and you see at least “clearing old jobs from queue”. The Web UI is then accessible)

    Et voilà, it works 🙂

    1. Connect Onto The Synology Via A SSH Console
      That took three websites to explain But Now I am in

      And Move To The Directory Mounted As /Config. Then, Exec:
      Huh ? how ? what do I type ?

  3. Thanks for sharing.

    However, when I try to reach the page via HTTPS port, I get a “400 Bad Request” (The plain HTTP request was sent to HTTPS port).

    Any idea what I am doing wrong here?

    Thanks,
    Max

      1. Thx Jason. Got it.
        But I’m still facing problems: I only get “Invalid Date” tests. I set the TZ to Europe/Vienna.
        Any ideas?

        Thanks,
        Max

  4. Re-Accept?
    I have set the OOKLA_EULA_GDPR to true (in Synology Docker application, “environment”. Ist this enough?

  5. Hi Jason,

    Managed to get this running. But my question is there a way to get this to exceute every 30mins or 60mins and record the result within a log? I am having terrible throuput issues with my ISP since upgrading to 1Gb and need to get a view of how reliable my connection over a prolonged period.

Leave a Reply