# 🚀 Speedtest Tracker installieren

Diese Anleitung zeigt, wie du den **Speedtest Tracker** mit **Docker Compose** installierst.
Der Speedtest Tracker ermöglicht es, regelmäßige Internet-Geschwindigkeitstests automatisch auszuführen und grafisch darzustellen.

---

## 🐳 1. Docker installieren

> 📦 Wenn Docker noch nicht installiert ist, folge dieser Anleitung:
> [!ref](docker-und-compose-installation.md)

---

## 📂 2. Verzeichnisse erstellen

Lege die Ordnerstruktur an (am besten unter `/opt`):

```bash
sudo mkdir -p /opt/speedtest-tracker/web
cd /opt/speedtest-tracker
```

---

## 🧱 3. Docker Compose Datei erstellen

Erstelle eine neue Datei:

```bash
sudo nano /opt/speedtest-tracker/docker-compose.yml
```

Füge folgenden Inhalt ein:

```yaml
version: '3.3'
services:
  speedtest-tracker:
    container_name: speedtest-tracker
    ports:
      - '8080:80'
      - '8443:443'
    environment:
      - PUID=1000
      - PGID=1000
      - DB_CONNECTION=mysql
      - DB_HOST=db
      - DB_PORT=3306
      - DB_DATABASE=speedtest_tracker
      - DB_USERNAME=speedy
      - DB_PASSWORD=password
    volumes:
      - speedtest-app:/config
      - '/opt/speedtest-tracker/web:/etc/ssl/web'
    image: 'ghcr.io/alexjustesen/speedtest-tracker:latest'
    restart: unless-stopped
    depends_on:
      - db

  db:
    image: mariadb:10
    restart: always
    environment:
      - MARIADB_DATABASE=speedtest_tracker
      - MARIADB_USER=speedy
      - MARIADB_PASSWORD=password
      - MARIADB_RANDOM_ROOT_PASSWORD=true
    volumes:
      - speedtest-db:/var/lib/mysql

volumes:
  speedtest-app:
  speedtest-db:
```

Speichern und schließen (`Ctrl + O`, `Ctrl + X`).

---

## ▶️ 4. Container starten

Starte den Stack im Hintergrund:

```bash
docker compose up -d
```

Docker lädt nun automatisch die benötigten Images und startet die Container.

---

## 🌐 5. Webinterface aufrufen

Nach kurzer Zeit ist das Interface erreichbar unter:

```
http://<DEINE-IP>:8080/admin
```

Standard-Login:
```
E-Mail: admin@example.com
Passwort: password
```

> ⚠️ **Sicherheitstipp:** Ändere das Standardpasswort nach dem ersten Login!

---

## 🧰 6. Nützliche Docker-Befehle

| Befehl | Beschreibung |
|--------|---------------|
| `docker compose ps` | Zeigt laufende Container |
| `docker compose logs -f` | Live-Logs anzeigen |
| `docker compose restart` | Neustart des Stacks |
| `docker compose down` | Stack stoppen und entfernen |
| `docker compose pull && docker compose up -d` | Speedtest Tracker aktualisieren |

---

## ✅ 7. Abschluss

Der **Speedtest Tracker** ist nun betriebsbereit und überwacht automatisch deine Internetverbindung.
Die Ergebnisse kannst du bequem im Dashboard ansehen oder exportieren.
