1 Commits

Author SHA1 Message Date
f66c0d51fb Upload runbook for speedtest setup 2026-01-23 18:40:11 +13:00

View File

@@ -0,0 +1,104 @@
# Speedtest Tracker (LinuxServer.io) Installation Runbook
## Purpose
Deploy **Speedtest Tracker** using the **LinuxServer.io Docker image** to automatically track internet performance over time using Ookla Speedtest.
This runbook covers:
- Application key requirements
- Docker Compose configuration
- Initial access and login
- Validation checks
---
## 1. Prerequisites
- Docker and Docker Compose installed
- A persistent storage location available on the host
- LAN access to the host
- Known timezone (e.g. `Pacific/Auckland`)
---
## 2. Application Key (APP_KEY)
⚠️ **Mandatory** the container will refuse to start without an application key.
The LinuxServer.io image **does not generate an APP_KEY automatically**.
A valid key **must be generated externally** and provided via environment variables **before the container starts**.
### Important notes
- The key must be in `base64:` format
- The key must remain stable for the lifetime of the deployment
- Regenerating the key later will invalidate encrypted data
---
## 3. Create Docker Compose File
Create or edit `docker-compose.yml`:
```
services:
speedtest-tracker:
image: lscr.io/linuxserver/speedtest-tracker:latest
container_name: speedtest-tracker
restart: unless-stopped
ports:
- "8765:80"
environment:
- PUID=1000
- PGID=1000
- TZ=Pacific/Auckland
- DISPLAY_TIMEZONE=Pacific/Auckland
- APP_KEY=base64:REDACTED
- APP_URL=http://192.168.50.253:8765
- DB_CONNECTION=sqlite
- SPEEDTEST_SCHEDULE=0 * * * *
volumes:
- /mnt/storage01/docker/speedtest-tracker:/config
```
## 4. Prepare Persistent Storage
Ensure the host directory exists and is owned by the configured PUID/PGID.
```
bash
mkdir -p /mnt/storage01/docker/speedtest-tracker
chown -R 1000:1000 /mnt/storage01/docker/speedtest-tracker
```
## 5. Start the Container
Start the service using Docker Compose:
```
bash
docker compose up -d
```
## 6. Access the site
```
http://<IP_ADDRESS>:8765
```
## 7. Initial Login
The LinuxServer.io image includes a pre-seeded default administrator account.
Use the following credentials to log in for the first time:
```
Email: admin@example.com
Password: password
```
## 8. User Account
Now go create a new user, made it an administrator.
Logout as admin, and sign in with newly create account.
Change the admin again to a user account, delete the guest account.
## FIN