diff --git a/.gitbook/assets/dashboard.png b/.gitbook/assets/dashboard.png
new file mode 100644
index 0000000..d0f172c
Binary files /dev/null and b/.gitbook/assets/dashboard.png differ
diff --git a/.gitbook/assets/dashboard_screenshot.jpg b/.gitbook/assets/dashboard_screenshot.jpg
deleted file mode 100644
index 4a12994..0000000
Binary files a/.gitbook/assets/dashboard_screenshot.jpg and /dev/null differ
diff --git a/.gitbook/assets/image (2).png b/.gitbook/assets/image (2).png
deleted file mode 100644
index 2896fa8..0000000
Binary files a/.gitbook/assets/image (2).png and /dev/null differ
diff --git a/.gitbook/assets/influxdb2_settings.png b/.gitbook/assets/influxdb2_settings.png
deleted file mode 100644
index 55d0ce8..0000000
Binary files a/.gitbook/assets/influxdb2_settings.png and /dev/null differ
diff --git a/.gitbook/assets/influxdbv2_settings.png b/.gitbook/assets/influxdbv2_settings.png
new file mode 100644
index 0000000..6661161
Binary files /dev/null and b/.gitbook/assets/influxdbv2_settings.png differ
diff --git a/README.md b/README.md
index c5cd12e..35a4687 100644
--- a/README.md
+++ b/README.md
@@ -11,11 +11,9 @@ description: >-
Docs are up to date through version: `0.24.x`
{% endhint %}
- V0.20.6 Dashboard Dashboard page.png)


| Features | Status |
|---|---|
| Install options | |
| Docker images for x86 | Done |
| Docker images for arm64 | Done |
| unRAID Community App | Done |
| Dashboard | |
| Show the most recent results | Done |
| Pretty graphs | Done |
| Results | |
| History of failed and successful results | Done |
Filter by scheduled and successful | Done |
| Export selected results to CSV | Done |
| Speedtest options | |
| Scheduled tests | Done |
| Adhoc test | Done |
| Manually specify a server | Done |
| Manually specify a list of servers | Done |
| Threshold alerts | Done |
| Ping options | |
| Ping a domain or list of domains | Planned |
| Database support | |
| SQLite (default) | Done |
| MariaDB / MySQL | Done |
| Postgresql | Done |
| InfluxDB v1 | Planned |
| InfluxDB v2 | Done |
| Prometheus | Planned |
| Notification Channels | |
| In-app | Done |
| Done | |
| Discord | Done |
| Gotify | Done |
| Slack | Done |
| Telegram | Done |
| Webhooks | Done |
| Ntfy | Done |
| Pushover | Done |
| HealthCheck.io | Done |
| Application Monitoring | |
| https://ohdear.app/ | Planned |
| https://thenping.me/ | Planned |
| https://healthchecks.io/ | Planned |
| Other | |
| Backup / Restore | Planned |
| Import data from https://github.com/henrywhitaker3/Speedtest-Tracker | Planned |
| Features | Status |
|---|---|
| Install options | |
| Docker images for x86 | Done |
| Docker images for arm64 | Done |
| unRAID Community App | Done |
| Dashboard | |
| Show the most recent results | Done |
| Pretty graphs | Done |
| Results | |
| History of failed and successful results | Done |
Filter by scheduled and successful | Done |
| Export selected results to CSV | Done |
| Speedtest options | |
| Scheduled tests | Done |
| Adhoc test | Done |
| Manually specify a server | Done |
| Manually specify a list of servers | Done |
| Threshold alerts | Done |
| Ping options | |
| Ping a domain or list of domains | Planned |
| Database support | |
| SQLite (default) | Done |
| MariaDB / MySQL | Done |
| Postgresql | Done |
| InfluxDB v2 | Done |
| Prometheus | Planned |
| Notification Channels | |
| In-app | Done |
| Done | |
| Discord | Done |
| Gotify | Done |
| Slack | Done |
| Telegram | Done |
| Webhooks | Done |
| Ntfy | Done |
| Pushover | Done |
| HealthCheck.io | Done |
| Application Monitoring | |
| https://ohdear.app/ | Planned |
| https://thenping.me/ | Planned |
| https://healthchecks.io/ | Planned |
mysql
The mysql driver can be used for both MySQL and MariaDB.
| Protocol | External port (default) | Internal port |
|---|---|---|
| HTTP | 80 | 80 |
| HTTPS | 443 | 443 |
services:
+ speedtest-tracker:
+ image: lscr.io/linuxserver/speedtest-tracker:latest
+ restart: unless-stopped
container_name: speedtest-tracker
ports:
- 8080:80
@@ -59,24 +83,20 @@ services:
environment:
- PUID=1000
- PGID=1000
- - APP_KEY=
- - DB_CONNECTION=mysql
+ - DB_CONNECTION=mariadb
- DB_HOST=db
- DB_PORT=3306
- DB_DATABASE=speedtest_tracker
- DB_USERNAME=speedy
- DB_PASSWORD=password
- - SPEEDTEST_SCHEDULE=
- - SPEEDTEST_SERVERS=
- - PRUNE_RESULTS_OLDER_THAN=
- - CHART_DATETIME_FORMAT=
+ - APP_KEY=
- DATETIME_FORMAT=
- APP_TIMEZONE=
+ - SPEEDTEST_SCHEDULE= # Optional
+ - SPEEDTEST_SERVERS= # Optional
volumes:
- /path/to/data:/config
- /path/to-custom-ssl-keys:/config/keys
- image: lscr.io/linuxserver/speedtest-tracker:latest
- restart: unless-stopped
depends_on:
- db
db:
@@ -91,13 +111,41 @@ services:
- speedtest-db:/var/lib/mysql
volumes:
speedtest-db:
+
+
+***
+
+```
+docker run -d --name speedtest-tracker --restart unless-stopped \
+ -p 8080:80 \
+ -p 8443:443 \
+ -e PUID=1000 \
+ -e PGID=1000 \
+ -e DB_CONNECTION=mariadb \
+ -e DB_HOST= \
+ -e DB_PORT=3306 \
+ -e DB_DATABASE=speedtest_tracker \
+ -e DB_USERNAME= \
+ -e DB_PASSWORD= \
+ -e APP_KEY= \
+ -e DATETIME_FORMAT= \
+ -e APP_TIMEZONE= \
+ -e SPEEDTEST_SCHEDULE= \
+ -e SPEEDTEST_SERVERS= \
+ -v /path/to/data:/config \
+ -v /path/to-custom-ssl-keys:/config/keys \
+ lscr.io/linuxserver/speedtest-tracker:latest
```
+
+
{% endtab %}
-{% tab title="Postgres" %}
+{% tab title="MySQL" %}
```yaml
services:
speedtest-tracker:
+ image: lscr.io/linuxserver/speedtest-tracker:latest
+ restart: unless-stopped
container_name: speedtest-tracker
ports:
- 8080:80
@@ -105,89 +153,53 @@ services:
environment:
- PUID=1000
- PGID=1000
- - APP_KEY=
- - DB_CONNECTION=pgsql
+ - DB_CONNECTION=mysql
- DB_HOST=db
- - DB_PORT=5432
+ - DB_PORT=3306
- DB_DATABASE=speedtest_tracker
- DB_USERNAME=speedy
- DB_PASSWORD=password
- - SPEEDTEST_SCHEDULE=
- - SPEEDTEST_SERVERS=
- - PRUNE_RESULTS_OLDER_THAN=
- - CHART_DATETIME_FORMAT=
+ - APP_KEY=
- DATETIME_FORMAT=
- APP_TIMEZONE=
+ - SPEEDTEST_SCHEDULE= # Optional
+ - SPEEDTEST_SERVERS= # Optional
volumes:
- /path/to/data:/config
- /path/to-custom-ssl-keys:/config/keys
- image: lscr.io/linuxserver/speedtest-tracker:latest
- restart: unless-stopped
depends_on:
- db
db:
- image: postgres:15
+ image: mysql:9
restart: always
environment:
- - POSTGRES_DB=speedtest_tracker
- - POSTGRES_USER=speedy
- - POSTGRES_PASSWORD=password
+ - MARIADB_DATABASE=speedtest_tracker
+ - MARIADB_USER=speedy
+ - MARIADB_PASSWORD=password
+ - MARIADB_RANDOM_ROOT_PASSWORD=true
volumes:
- - speedtest-db:/var/lib/postgresql/data
+ - speedtest-db:/var/lib/mysql
volumes:
speedtest-db:
```
-{% endtab %}
-{% endtabs %}
***
-### Install with Docker
-
-{% hint style="info" %}
-These instructions assume you have an appropriate database instance that already exists.
-{% endhint %}
-
-{% hint style="info" %}
-A full list of released versions can be found [here](https://fleet.linuxserver.io/image?name=linuxserver/speedtest-tracker)
-{% endhint %}
-
-{% tabs %}
-{% tab title="SQLite" %}
-```bash
-docker run -d --name speedtest-tracker --restart unless-stopped \
- -p 8080:80 \
- -p 8443:443 \
- -e PUID=1000 \
- -e PGID=1000 \
- -e APP_KEY= \
- -e DB_CONNECTION=sqlite \
- -e SPEEDTEST_SCHEDULE= \
- -e SPEEDTEST_SERVERS= \
- -e PRUNE_RESULTS_OLDER_THAN= \
- -e CHART_DATETIME_FORMAT= \
- -e DATETIME_FORMAT= \
- -e APP_TIMEZONE= \
- -v /path/to/data:/config \
- -v /path/to-custom-ssl-keys:/config/keys \
- lscr.io/linuxserver/speedtest-tracker:latest
```
-{% endtab %}
-
-{% tab title="MariaDB/MySQL" %}
-```bash
-docker run -d --name speedtest-tracker --restart unless-stopped \
+docker run -d --name speedtest-tracker --restart unless-stopped \
-p 8080:80 \
-p 8443:443 \
-e PUID=1000 \
-e PGID=1000 \
- -e APP_KEY= \
-e DB_CONNECTION=mysql \
-e DB_HOST= \
-e DB_PORT=3306 \
-e DB_DATABASE=speedtest_tracker \
-e DB_USERNAME= \
-e DB_PASSWORD= \
+ -e APP_KEY= \
+ -e DATETIME_FORMAT= \
+ -e APP_TIMEZONE= \
-e SPEEDTEST_SCHEDULE= \
-e SPEEDTEST_SERVERS= \
-v /path/to/data:/config \
@@ -197,30 +209,100 @@ docker run -d --name speedtest-tracker --restart unless-stopped \
{% endtab %}
{% tab title="Postgres" %}
-```bash
+```yaml
+services:
+ speedtest-tracker:
+ image: lscr.io/linuxserver/speedtest-tracker:latest
+ restart: unless-stopped
+ container_name: speedtest-tracker
+ ports:
+ - 8080:80
+ - 8443:443
+ environment:
+ - PUID=1000
+ - PGID=1000
+ - DB_CONNECTION=pgsql
+ - DB_HOST=db
+ - DB_PORT=3306
+ - DB_DATABASE=speedtest_tracker
+ - DB_USERNAME=speedy
+ - DB_PASSWORD=password
+ - APP_KEY=
+ - DATETIME_FORMAT=
+ - APP_TIMEZONE=
+ - SPEEDTEST_SCHEDULE= # Optional
+ - SPEEDTEST_SERVERS= # Optional
+ volumes:
+ - /path/to/data:/config
+ - /path/to-custom-ssl-keys:/config/keys
+ depends_on:
+ - db
+ db:
+ image: postgres:17
+ restart: always
+ environment:
+ - POSTGRES_DB=speedtest_tracker
+ - POSTGRES_USER=speedy
+ - POSTGRES_PASSWORD=password
+ volumes:
+ - speedtest-db:/var/lib/postgresql/data
+volumes:
+ speedtest-db:
+```
-docker run -d --name speedtest-tracker --restart unless-stopped \
+***
+
+```
+docker run -d --name speedtest-tracker --restart unless-stopped \
-p 8080:80 \
-p 8443:443 \
-e PUID=1000 \
-e PGID=1000 \
- -e APP_KEY \
-e DB_CONNECTION=pgsql \
-e DB_HOST= \
- -e DB_PORT=5432 \
+ -e DB_PORT=3306 \
-e DB_DATABASE=speedtest_tracker \
-e DB_USERNAME= \
-e DB_PASSWORD= \
- -e SPEEDTEST_SCHEDULE= \
- -e SPEEDTEST_SERVERS= \
- -e PRUNE_RESULTS_OLDER_THAN= \
- -e CHART_DATETIME_FORMAT= \
+ -e APP_KEY= \
-e DATETIME_FORMAT= \
-e APP_TIMEZONE= \
+ -e SPEEDTEST_SCHEDULE= \
+ -e SPEEDTEST_SERVERS= \
-v /path/to/data:/config \
-v /path/to-custom-ssl-keys:/config/keys \
lscr.io/linuxserver/speedtest-tracker:latest
```
{% endtab %}
{% endtabs %}
+{% endstep %}
+
+{% step %}
+#### Environment Variables
+
+In order for the application to run smoothly, some environment variables need to be set. Check out the [Environment Variables](../environment-variables.md) section. Make sure you set all the **Required** variables.
+{% endstep %}
+
+{% step %}
+#### Speedtest Variables
+
+Optionally you can set variables to have automatic speedtest on an schedule. Check out the [Environment Variables](../environment-variables.md#speedtest) section on how to set the variables. As well see the [FAQ](../../help/faqs.md#speedtest) for tips on the best schedule
+{% endstep %}
+
+{% step %}
+#### Start the Container
+
+You can now start the container accordingly the platform you are on.
+{% endstep %}
+
+{% step %}
+#### First Login
+
+During the start the container there is an default username and password created. Use the [default login](../../security/authentication.md#default-user-account) credentials to login to the application. You can [change the default user](../../security/authentication.md#change-user-account) after logging in.
+{% endstep %}
+{% endstepper %}
+
+{% hint style="info" %}
+Complete overview of the Environment Variables for custom configuration can be found [here](../environment-variables.md)
+{% endhint %}
diff --git a/getting-started/installation/using-kubernetes.md b/getting-started/installation/using-kubernetes.md
new file mode 100644
index 0000000..722e617
--- /dev/null
+++ b/getting-started/installation/using-kubernetes.md
@@ -0,0 +1,6 @@
+# Using Kubernetes
+
+Check out this amazing community kubernetes manifest to get you started.
+
+{% embed url="https://github.com/maximemoreillon/kubernetes-manifests/tree/master/speedtest-tracker" %}
+
diff --git a/getting-started/installation/qnap.md b/getting-started/installation/using-qnap.md
similarity index 88%
rename from getting-started/installation/qnap.md
rename to getting-started/installation/using-qnap.md
index 10ac41e..4503fd6 100644
--- a/getting-started/installation/qnap.md
+++ b/getting-started/installation/using-qnap.md
@@ -9,7 +9,7 @@ These instructions will run you through setting up the application on a QNAP NAS
1. Open **"Container Station"** and select **"Applications"** from the left-hand navigation menu.
2. Press the **"Create"** button.
3. Provide a name for the application.
-4. Paste the below Docker Compose code into the text box, this is a modification of the MariaDB Docker Compose [install ](installation.md)instructions.
+4. Paste the below Docker Compose code into the text box, this is a modification of the MariaDB Docker Compose [install ](using-docker.md)instructions.
5. Click **"Validate"** to make sure there are no errors.
6. Click **"Create"** to deploy the application.
@@ -30,19 +30,17 @@ services:
environment:
- PUID=1000
- PGID=1000
- - APP_KEY=
- - DB_CONNECTION=mysql
- - DB_HOST=192.168.1.4
+ - DB_CONNECTION=mariadb
+ - DB_HOST=db
- DB_PORT=3306
- DB_DATABASE=speedtest_tracker
- DB_USERNAME=speedy
- DB_PASSWORD=password
- - SPEEDTEST_SCHEDULE=
- - SPEEDTEST_SERVERS=
- - PRUNE_RESULTS_OLDER_THAN=
- - CHART_DATETIME_FORMAT=
+ - APP_KEY=
- DATETIME_FORMAT=
- APP_TIMEZONE=
+ - SPEEDTEST_SCHEDULE= # Optional
+ - SPEEDTEST_SERVERS= # Optional
volumes:
- /path/to-data:/config
- /path/to-custom-ssl-keys:/config/keys
diff --git a/getting-started/installation/synology.md b/getting-started/installation/using-synology.md
similarity index 96%
rename from getting-started/installation/synology.md
rename to getting-started/installation/using-synology.md
index dcb18f4..f39892b 100644
--- a/getting-started/installation/synology.md
+++ b/getting-started/installation/using-synology.md
@@ -7,7 +7,7 @@ description: >-
# Using Synology
{% hint style="warning" %}
-The following directions are for the old "Docker" application, if you're using "Container Manager" you can follow the docker compose instructions in [installation.md](installation.md "mention").
+The following directions are for the old "Docker" application, if you're using "Container Manager" you can follow the docker compose instructions in [using-docker.md](using-docker.md "mention").
{% endhint %}
### Install on a Synology NAS
diff --git a/getting-started/installation/unraid.md b/getting-started/installation/using-unraid.md
similarity index 91%
rename from getting-started/installation/unraid.md
rename to getting-started/installation/using-unraid.md
index 2d4b9d9..21fedbd 100644
--- a/getting-started/installation/unraid.md
+++ b/getting-started/installation/using-unraid.md
@@ -11,4 +11,4 @@ description: >-
Use the Community Applications plugin to install one of the templates below by searching for "Speedtest Tracker".
* LinuxServer.io - [Template support](https://github.com/linuxserver/docker-speedtest-tracker)
-* ZappyZap - [Template support](https://forums.unraid.net/topic/130245-support-devzwf-speedtest-tracker/)
+* ZappyZap - [Template support](https://forums.unraid.net/topic/130245-support-devzwf-speedtest-tracker/)
\ No newline at end of file
diff --git a/help/error-messages.md b/help/error-messages.md
index 4eb2b28..09d958e 100644
--- a/help/error-messages.md
+++ b/help/error-messages.md
@@ -4,9 +4,11 @@

.png)

InfluxDB2 settings
| Name | Default | Description |
|---|---|---|
| URL | blank | FQDN or IP address to the InfluxDB2 instance |
| Org | blank | Organization on which you created your bucket in |
| Bucket | speedtest-tracker | The name of the bucket you created in your org |
| Token | blank | API token that has access to write to the org and bucket listed above |

Influxdb v2 Settings
| Name | Data Type | |
|---|---|---|
result_id | String | Tag |
external_ip | String | Tag |
isp | String | Tag |
service | String | Tag |
server_id | String | Tag |
server_name | String | Tag |
server_country | String | Tag |
server_location | String | Tag |
healthy | String | Tag |
status | String | Tag |
scheduled | String | Tag |
download | init | Field |
upload | init | Field |
ping | float | Field |
download_bits | int | Field |
upload_bits | int | Field |
download_jitter | float | Field |
upload_jitter | float | Field |
ping_jitter | float | Field |
download_latency_avg | float | Field |
download_latency_high | float | Field |
download_latency_low | float | Field |
upload_latency_avg | float | Field |
upload_latency_high | float | Field |
upload_latency_low | float | Field |
packet_loss | float | Field |