Was brauche ich um eine UniFi Umgebung administrieren zu können? Richtig, einen UniFi Controller. Dabei ist es egal ob es eine Dream Machine ist oder eben nur ein kleiner Raspberry Pi. Natürlich kann der kleine Raspberry Pi nur die Arbeit als Network Controller übernehmen, für das Thema Protect braucht man dann doch schon eine erwachsene DreamMachine.
Preview | Product | Rating | Price | |
---|---|---|---|---|
Raspberry Pi 4, Raspberry Pi 4 Model B 4 GB Ultimatives Kit mit 32GB Class10 Micro SD-Karte, 5V 3,... | Bei Amazon ansehen |
In dem Bundle sind alle Komponenten drin, welche Ihr zum Betrieb benötigt. Wieso also eine teure Dream Machine kaufen, wenn auch ein kleiner Raspberry Pi die Arbeit erledigen kann.
Raspberry PI vorbereiten
Ich brauch euch nicht zu sagen wie Ihr das Raspbian auf die SD Karte schraubt und das System einmal updated, denn das habe ich euch schon zig mal erklärt. Im selben Schritt haben wir dort Docker installiert.
Aber wenn du nach der Prozedur einmal auf Nummer sicher gehen möchtest, ob Docker auch einwandfrei läuft, dann starte doch mal schnell den Container Namens „Hello World“.
docker run hello-world
UniFi Controller als Docker Container auf Raspberry Pi starten
mkdir /opt/unifi docker run -d --restart=unless-stopped --init -p 8080:8080 -p 8443:8443 -p 3478:3478/udp -p 10001:10001/udp -e TZ='Europe/Berlin' -v /opt/unifi:/unifi --name unifi jacobalberty/unifi
Der Befehl startet den UniFi Controller und setzt direkt ein paar Optionen fest. Der Part von „restart“ sagt dem Container, beim Ausfall oder Neustart, bitte den Container auch wieder Neustarten. So ist der Controller bei jedem Neustart auch wieder verfügbar.
-p definiert die benötigten Ports für den Controller.
Port 8443 wird später der Port sein, auf welchem Ihr das Administrationstool erreicht.
-e TZ legt die Zeitzone fest, in welchem sich der Controller befindet. Für Deutschland ist das „Europe/Berlin„.
-v /opt/unifi:/unifi legt den Pfad fest, in welchem die persistenten Daten abgelegt werden soll auf dem PI. Hier ist es einfach /opt/unifi.
Nicht wundern, der Befehl wird einige Zeit in Anspruch nehmen, da einiges Daten heruntergeladen und entpackt werden muss.
Überprüfen ob der Container läuft
docker ps -a
Mit diesem Befehl lässt du dir alle laufenden Container auf dem PI anzeigen.
Zugriff auf den Controller über die WebGUI
Wenn du ins Adminmenü gelangen willst um den Controller zu konfigurieren, nutze deinen Webbrowser und surfe deinen PI an.
https://<DEINE-IP>:8443
19. Oktober 2021 um 14:31 Uhr
der container startet bei mir immer neu. docker logs unifi bringt keine ergebnisse. ich bin leider docker neuling. irgendwelche ideen?
19. Oktober 2021 um 18:21 Uhr
Hi,
Eventuell sind einfach die Ports nicht frei und deswegen fährt er nicht „hoch“.
Benutzt du grafische Oberflächen wie Portainer zur Verwaltung? Damit geht’s oft einfacher und man sieht schneller was schief läuft. Ansonsten ist’s schwer ohne weitere Infos oder Logs….
20. Oktober 2021 um 12:36 Uhr
das ganze rennt auf nem raspian headless via SSH. docker logs unifi gibt keinen output (bekannter meinte evtl, dass die containerlogs evtl wo anders hinkommen?). netstat sagt, keiner der ports ist belegt (container down).
user ist kein SU und in der docker group. habs aber als root auch probiert -> selbes ergebniss.
15. November 2021 um 11:41 Uhr
Hi,
da ich bereits Traefik über den Port 8080 laufen habe, wird der Unifi-Container nicht ordentlich gestartet. Der Port wird jedoch meines Wissens nach für die Kommunikation der Netzwerk-Clients untereinander benötigt. Kann der Port bei Traefik ohne Probleme geändert werden, oder funktioniert dieser dann ebenfalls nicht richtig?
19. Dezember 2021 um 18:24 Uhr
Gutes Tutorial, thumbs up.
Ist es egal ob man jacobalberty/unifi oder jacobalberty/unifi:arm32v7 macht?
Manchmal liest man das eine und manchmal das andere.
Und noch ein wichtiger Punkt:
Hast du noch eine step-by-step Info wie man am besten ein Upgrade der Controller Software für dieses Setup macht?
Irgendwie wohl mit pull lt. google, aber welche Befehle genau wäre top.
Vielen Dank und viele Gruesse
5. Juni 2022 um 16:49 Uhr
Hallo,
ich habe die Anleitung mit frischem Raspberry Pi OS (lite) verfolgt und die Software läuft soweit auch. allerdings kann ich meinen AC AP Lite nicht „Adoptieren“. Er wechselt dann laut Controller die ganze Zeit den Zustand von „Adopting“ zu „Offline“ und wieder zurück (Endlosschleife). Ich würde mich freuen wenn mir jemand sagen könnte, wie ich den folgenden Fehler, welchen man in den Logs finden kann, beheben kann.
Danke im Voraus,
Chris
[2022-06-05 16:31:21,028] Starting unifi controller service.
[2022-06-05 16:31:21,041] WARNING: Running UniFi in insecure (root) mode
WARN Unable to load properties from ‚/usr/lib/unifi/data/system.properties‘ – /usr/lib/unifi/data/system.properties (No such file or directory)
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0xb317ebe0, pid=21, tid=0x67a6f460
#
# JRE version: OpenJDK Runtime Environment (8.0_312-b07) (build 1.8.0_312-8u312-b07-0ubuntu1~18.04-b07)
# Java VM: OpenJDK Client VM (25.312-b07 mixed mode linux-aarch32 )
# Problematic frame:
# j it.sauronsoftware.cron4j.SchedulingPattern.match(Ljava/util/TimeZone;J)Z+94
#
# Core dump written. Default location: /usr/lib/unifi/core or core.21
#
# An error report file with more information is saved as:
# /usr/lib/unifi/hs_err_pid21.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.java.com/bugreport/crash.jsp
#
/usr/local/bin/docker-entrypoint.sh: line 216: 21 Aborted (core dumped) ${UNIFI_CMD}
[2022-06-05 16:32:07,554] WARN: unifi service process ended without being signaled? Check for errors in /unifi/log.
[2022-06-05 16:32:09,352] Starting unifi controller service.
[2022-06-05 16:32:09,356] WARNING: Running UniFi in insecure (root) mode
12. Juli 2022 um 00:30 Uhr
Zum Abschluss fehlt hier noch der Hinweis, dass man die IP des Controllers angeben muss, sonst klappt das mit dem Adopting nicht.
Also wenn man sich in den Controller eingeloggt hat (bei der neuen Interfaceansicht) dann unter Settings –> System –> Override Inform Host die IP vom Raspberry angeben!
In der alten Ansicht (kann man umstellen „Legacy Interface“) ist es unter Settings –> Controller –> Controller-Hostname/IP.
Das Ganze steht auch auf der Seite vom Entwickler unter
Adopting Access Points/Switches/Security Gateway
https://hub.docker.com/r/jacobalberty/unifi
14. Januar 2024 um 09:22 Uhr
Danke, bin gestern schier verzweifelt bei dem Versuch, die Geräte ins Netz zu bekommen. Dank Deines Hinweises mit der IP läuft’s jetzt.
21. August 2022 um 12:23 Uhr
Hallo,
vielen Dank für die Anleitung. Hab aber mal ne Frage wie ich den Controller denn updaten kann.
Mir wird jetzt eine neue Version angezeigt, aber irgendwie funktioniert das Update nicht. Muss ich das alles ganz neu installieren?
Vielen Dank!
3. August 2023 um 22:33 Uhr
Moin, ich habe das problem das sich meine Geräte (Unifi 8port PoE Switch und 2 Unifi AP 6Pro) nicht mit dem Controller Einbinden lässt.
Johannes
31. Januar 2024 um 08:47 Uhr
Hallo
Vielen Dank für die kompakte Anleitung. Auf meinem Raspberry Pi 4 Model B Rev 1.2 mit ARMv7 32bit Processor erhalte ich folgende Fehlermeldung:
Unable to find image ‚jacobalberty/unifi:latest‘ locally
latest: Pulling from jacobalberty/unifi
docker: no matching manifest for linux/arm/v7 in the manifest list entries.
Liegt das daran, dass dieses Docker Image auf 32bit ARM Linux gar nicht läuft? Oder kann man dies irgendwie umgehen. Gemäss https://hub.docker.com/r/jacobalberty/unifi sollte das Image eigentlich „multiarch“ sein. Aber anscheinend wird MongoDB nicht auf 32bit supported https://www.mongodb.com/community/forums/t/installation-on-32bit-system/106492.
Vielen Dank und beste Grüsse
Markus
24. März 2024 um 10:50 Uhr
Vielen Dank für die ausführliche Anleitung.
Gibt es auch eine einfache Möglichkeit zum Updaten?
Oder muss man den Raspberry jedes mal neu aufsetzen?
Vielen Dank und beste Grüße