diff --git a/README.md b/README.md index e060c142..6a93225e 100644 --- a/README.md +++ b/README.md @@ -131,6 +131,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Serge](https://github.com/serge-chat/serge) - A web interface for chatting with Alpaca through llama.cpp. - [SimpleX SMP](https://github.com/simplex-chat/simplexmq) - A reference implementation of the SimpleX Messaging Protocol for simplex queues over public networks. - [Sonarr](https://github.com/Sonarr/Sonarr) - TV show manager for Usenet and BitTorrent +- [Speedtest Tracker](https://github.com/alexjustesen/speedtest-tracker) - Internet performance tracking application. - [Sshwifty](https://github.com/nirui/sshwifty/) - Web SSH & Telnet (WebSSH & WebTelnet client) - [Stirling-PDF](https://github.com/Frooodle/Stirling-PDF) - Locally hosted web application that allows you to perform various operations on PDF files. - [Syncthing](https://github.com/syncthing/syncthing) - Continuous File Synchronization diff --git a/apps/speedtest-tracker/config.json b/apps/speedtest-tracker/config.json new file mode 100644 index 00000000..757c3119 --- /dev/null +++ b/apps/speedtest-tracker/config.json @@ -0,0 +1,23 @@ +{ + "$schema": "../schema.json", + "name": "Speedtest Tracker", + "port": 8211, + "available": true, + "exposable": true, + "id": "speedtest-tracker", + "tipi_version": 1, + "version": "v0.13.1", + "categories": ["utilities"], + "description": "Speedtest Tracker is a self-hosted internet performance tracking application that runs speedtest checks against Ookla's Speedtest service.", + "short_desc": "Internet performance tracking application.", + "author": "alexjustesen", + "source": "https://github.com/alexjustesen/speedtest-tracker", + "form_fields": [ + { + "type": "random", + "label": "SPEEDTEST_TRACKER_DB_PASSWORD", + "min": 32, + "env_variable": "SPEEDTEST_TRACKER_DB_PASSWORD" + } + ] +} diff --git a/apps/speedtest-tracker/docker-compose.yml b/apps/speedtest-tracker/docker-compose.yml new file mode 100644 index 00000000..7ae8b651 --- /dev/null +++ b/apps/speedtest-tracker/docker-compose.yml @@ -0,0 +1,66 @@ +version: "3.7" + +services: + speedtest-tracker: + image: ghcr.io/alexjustesen/speedtest-tracker:v0.13.1 + container_name: speedtest-tracker + environment: + - PUID=1000 + - PGID=1000 + - DB_CONNECTION=pgsql + - DB_HOST=speedtest-tracker-db + - DB_PORT=5432 + - DB_DATABASE=speedtest-tracker + - DB_USERNAME=tipi + - DB_PASSWORD=${SPEEDTEST_TRACKER_DB_PASSWORD} + - TZ=${TZ} + restart: unless-stopped + volumes: + - ${APP_DATA_DIR}/data/speedtest-tracker/config:/config + - /etc/localtime:/etc/localtime:ro + ports: + - ${APP_PORT}:80 + - 8212:443 + depends_on: + - speedtest-tracker-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.speedtest-tracker-web-redirect.redirectscheme.scheme: https + traefik.http.services.speedtest-tracker.loadbalancer.server.port: 80 + #traefik.http.services.speedtest-tracker.loadbalancer.serverstransport: insecuretransport@file + # Web + traefik.http.routers.speedtest-tracker-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.speedtest-tracker-insecure.entrypoints: web + traefik.http.routers.speedtest-tracker-insecure.service: speedtest-tracker + traefik.http.routers.speedtest-tracker-insecure.middlewares: speedtest-tracker-web-redirect + # Websecure + traefik.http.routers.speedtest-tracker.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.speedtest-tracker.entrypoints: websecure + traefik.http.routers.speedtest-tracker.service: speedtest-tracker + traefik.http.routers.speedtest-tracker.tls.certresolver: myresolver + # Local domain + traefik.http.routers.speedtest-tracker-local-insecure.rule: Host(`speedtest-tracker.${LOCAL_DOMAIN}`) + traefik.http.routers.speedtest-tracker-local-insecure.entrypoints: web + traefik.http.routers.speedtest-tracker-local-insecure.service: speedtest-tracker + traefik.http.routers.speedtest-tracker-local-insecure.middlewares: speedtest-tracker-web-redirect + # Local domain secure + traefik.http.routers.speedtest-tracker-local.rule: Host(`speedtest-tracker.${LOCAL_DOMAIN}`) + traefik.http.routers.speedtest-tracker-local.entrypoints: websecure + traefik.http.routers.speedtest-tracker-local.service: speedtest-tracker + traefik.http.routers.speedtest-tracker-local.tls: true + + speedtest-tracker-db: + container_name: speedtest-tracker-db + image: postgres:15 + restart: unless-stopped + environment: + - POSTGRES_USER=tipi + - POSTGRES_PASSWORD=${SPEEDTEST_TRACKER_DB_PASSWORD} + - POSTGRES_DB=speedtest-tracker + volumes: + - ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data + networks: + - tipi_main_network diff --git a/apps/speedtest-tracker/metadata/description.md b/apps/speedtest-tracker/metadata/description.md new file mode 100644 index 00000000..d4ee7463 --- /dev/null +++ b/apps/speedtest-tracker/metadata/description.md @@ -0,0 +1,32 @@ + +## Authentication + +Speedtest Tracker uses Filament for the admin panel. During the install process an admin account is created for you. + +Default User Account +| Username | Password | +| --- | --- | +| `admin@example.com`| `password` | + +--- + +## About + +A Docker image to check your internet speed using Ookla's Speedtest service. Build using Laravel and the Speedtest CLI. +These docs are up-to-date for version: `v0.12.1` + +![](https://834071469-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fvtb3s6TB12XY9iIx8YyJ%2Fuploads%2FrOKoxV0cH35wwjkbAgvE%2Fdashboard_screenshot.jpg?alt=media&token=121f5175-4008-4b26-9655-bc67d1369710) + +### + +Introduction + +Speedtest Tracker is a self-hosted internet performance tracking application that runs speedtest checks against Ookla's Speedtest service. + +#### + +Why might I want this? + +The main use case for Speedtest Tracker is to build a history of your internet's performance so that you can be informed when you're not receiving your ISP's advertised rates. + +_...also some of us just like a lot of data._ \ No newline at end of file diff --git a/apps/speedtest-tracker/metadata/logo.jpg b/apps/speedtest-tracker/metadata/logo.jpg new file mode 100644 index 00000000..9c34d462 Binary files /dev/null and b/apps/speedtest-tracker/metadata/logo.jpg differ