Files
2026-07-26 21:57:07 +02:00

3.5 KiB

UniFi Network Application (Docker)

UniFi Network Application (Controller) mit MongoDB, alle persistenten Daten liegen im Projektordner unter ./data/.

  • Image: linuxserver/unifi-network-application
  • Datenbank: MongoDB — die Version wird von start.sh beim ersten Start automatisch passend zur CPU gewählt und in .env gepinnt: x86_64/ARM mit AVX bzw. ARMv8.2 → 7.0, ältere CPUs ohne AVX → 4.4 (Mongo 5+ startet dort nicht). Danach den Pin nicht von Hand erhöhen — eine bestehende Datenbank läuft nicht ohne Migration unter einer neueren Major-Version.

Erster Start

cp .env.example .env   # und MONGO_PASS auf ein eigenes Passwort setzen
./start.sh             # wählt die MongoDB-Version und startet den Stack
docker-compose logs -f unifi-network-application   # warten bis der Start durch ist

Danach im Browser: https://:8443 (selbstsigniertes Zertifikat, Warnung einmalig bestätigen). Im Einrichtungs-Assistenten kann auch direkt ein vorhandenes Backup (.unf) eingespielt werden.

Ports

Hinweis: Ist Port 8080 auf dem Host schon belegt, das Mapping in der docker-compose.yml z.B. auf 8082:8080 ändern — dann müssen Geräte per set-inform http://<host-ip>:8082/inform (oder über Einstellungen → System → Erweitert → "Inform Host" überschreiben) adoptiert werden.

Host-Port Zweck
8443 Weboberfläche (HTTPS)
8080 Inform / Geräte-Adoption
3478/udp STUN
10001/udp Geräte-Discovery
8843 Gäste-Portal HTTPS (optional)
8880 Gäste-Portal HTTP (optional)
6789 Mobile Speedtest (optional)

Aktualisieren

./update.sh

Erstellt zuerst ein Backup, zieht dann die neuesten Images und startet die Container neu. Alle Daten bleiben in ./data/ erhalten.

Backups

./backup.sh          # kopiert die UniFi-Autobackups (.unf) nach ./backups/
./backup.sh --full   # Komplett-Backup von ./data als tar.gz (kurze Downtime)

Autobackups einmalig in der Weboberfläche aktivieren: Einstellungen → System → Backups → Automatische Sicherung.

Wiederherstellen

./restore.sh backups/unifi-full-backup_<datum>.tar.gz   # Komplett-Restore
./restore.sh backups/autobackup_<datum>/<datei>.unf     # .unf bereitstellen

.unf-Backups werden anschließend in der Weboberfläche eingespielt (Einstellungen → System → Backups → Wiederherstellen) oder bei einer Neuinstallation direkt im Einrichtungs-Assistenten.

MongoDB auf 7.0 migrieren

./migrate-mongo.sh

Für den Fall, dass der Stack auf neue Hardware umzieht (oder ursprünglich mit Mongo 4.4 eingerichtet wurde, die CPU aber mehr kann): Das Skript prüft zuerst die CPU (AVX bzw. ARMv8.2) und bricht ohne Änderungen ab, wenn MongoDB 5+ dort nicht laufen kann. Andernfalls erstellt es ein Komplett-Backup und migriert die Datenbank schrittweise in-place (4.4 → 5.0 → 6.0 → 7.0, inkl. featureCompatibilityVersion), pinnt MONGO_VERSION=7.0 in der .env und startet den Stack wieder.

Verzeichnisstruktur

data/mongodb/   MongoDB-Datenbank
data/unifi/     UniFi-Konfiguration, Logs, Autobackups
backups/        von backup.sh erstellte Sicherungen
.env            Zugangsdaten der Datenbank (nicht weitergeben)