Unifi Ubiquity AP einrichten

Unifi Controller als docker Container auf Ubuntu Server installieren

Gepostet von Andreas Nölke am

Um ein vernünftiges W-Lan kommt man auch zuhause nicht drum rum. Bisher habe ich mich auf zwei TP-Link Access Points verlassen und die haben mich Performance und reichweiten mäßig im Stich gelassen. Letztenendes bin ich auf eine andere Lösung gestoßen und habe mir zwei Access Point Lite (UAP-AC-LITE-EU)* von Unifi angeschafft. Als größte Hürde habe ich den Controller empfunden, da ich mir unsicher war ob ich den Aufwand betreiben will, einen Server zuhause zu administrieren.

In diesem Artikel möchte ich erklären wie man das ganze einrichtet und konfiguriert.

Vorbereitungen

Im Prinzip kann man das ganze mit Linux, MacOS oder auch Windows durchführen. In meinem Fall war klar: Ich will einen eigenen Server haben und habe in meinem Fall aktuell noch einen ausrangierten alten PC als Server am laufen. Installiert habe ich Ubuntu Server 20.04 LTS. Es wird bestimmt auch ein anderer Server oder sogar ein Raspberry PI gehen. Einfach probieren und sehen wie es läuft.

Ein Vorteil des Unifi Controllers: Er muss nicht die ganze Zeit laufen. Die Access Points werden darüber konfiguriert und können danach autark laufen. Der Controller kann somit auf einem Laptop installiert und bei Bedarf aktiviert und gestartet werden.

In diesem Beitrag erkläre ich wie man das ganze mit Docker und Docker Compose installiert. Ich möchte hier nicht im Detail auf die Installation von Docker oder Docker Compose eingehen, da die Anleitungen auf der Docker Webseite richtig gut sind und man alles ohne Probleme installieren kann.

Sicherheitshinweis

Noch ein kurzer Sicherheitshinweis Vorweg:

Diese Installation eignet sich nicht für einen Produktiv Server. Hierzu sind noch weitere Anpassungen notwendig was Firewall und Portfreigaben betrifft. Für mein Lokales Netzwerk sehe ich allerdings keine Probleme. Ich werde in einem weiteren Beitrag erklären wie man das mit einer Firewall auf dem Server absichern kann und wie man die docker-compose.yaml anpassen muss.

Unifi Controller installation

Um den Unifi Controller zu installieren hat man mehrere Möglichkeiten.

  1. Direkte installation auf dem System
  2. Installation mit einem eigenen Docker Container den man via Dockerfile baut
  3. Installation mit einem vorhandenen Docker Container

Ich habe mich für die Option 3, Installation mit einem vorhandenen Container, entschieden. Das macht das leben leichter, da wir uns nicht um updates kümmern müssen und regelmäßig neue Versionen ziehen können. Ich habe mich für linuxserver/unifi-controller entschieden. Es sieht nach einer seriösen Platform aus und wird regelmäßig mit updates versorgt.

Im folgenden gehe ich davon aus, das die Befehle nicht als root ausgeführt werden. Sollten root rechte notwendig sein, dann in der Regel nur um die Verzeichnisse einzurichten. Darauf weise ich aber explizit hin.

In dem Verzeichnis "/var/www/unifi" muss nun eine "docker-compose.yaml" angelegt werden. Es kann auch jedes andere Verzeichnis genommen werden. Ich habe mich für "/var/www" entschieden, weil ich noch weitere lokale Anwendungen auf meinem Server installieren will. Dann ist alles an seinem Platz.

mkdir -p /var/www/unifi

# hier kann es sein, das man das als sudo ausführen muss
sudo mkdir -p /var/www/unify
# dann dem aktuellen user die rechte geben
sudo chown -R CURRENT_USERNAME:CURRENT_GROUP /var/www/

cd /var/www/unifi
touch docker-compose.yaml
nano docker-compose.yaml

Als nächstes kommt der inhalt für die docker-compose.yaml Datei.

version: "2.1"
services:
  unifi-controller:
    image: ghcr.io/linuxserver/unifi-controller
    container_name: unifi-controller
    environment:
      - PUID=1000
      - PGID=1000
      - MEM_LIMIT=1024M #optional
    volumes:
      - /var/www/unify/config:/config
    ports:
      - 3478:3478/udp
      - 10001:10001/udp
      - 8080:8080
      - 8443:8443
#      - 1900:1900/udp #optional
      - 8843:8843 #optional
      - 8880:8880 #optional
      - 6789:6789 #optional
      - 5514:5514/udp #optional
    restart: always

Nun muss der container gestartet werden.

# lädt den Docker container auf den server
docker-compose pull
# startet den container
docker-compose up -d
# zeigt die log ausgabe des containers. So kann man sehen ob der container erfolgreich gestartet wurde
docker-compose logs -f

Das sollte ungefähr so aussehen.

Danach kann man nun mit der Einrichtung des Unifi Controllers beginnen. Hierzu muss lediglich

https://<server-ip>:8443

aufgerufen werden. Evtl. muss man das Zertifikat als ausnahme hinzufügen.

Danach kann man den Assistenten durchklicken. In meinem Fall habe ich kein Konto bei Ubiquiti angelegt, sondern ein lokales.

Fazit

Mit Docker Compose lassen sich sehr schnell und unkompliziert Anwendungen einrichten. Dadurch kann man auch komplexere Anwendungen wie diesen Unifi Controller ohne Probleme zum laufen bekommen und den Access Point Lite (UAP-AC-LITE-EU)* einrichten.

Natürlich kann man auch alle weiteren Unifi Produkte darüber Administrieren und Verwalten.