Zum Inhalt springen

Nextcloud/Talk/HPB/Docker: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
 
Zeile 1: Zeile 1:
== Docker-Container ==
=== Docker-Container ===
* '''Anforderungen:''' Docker
* '''Anforderungen:''' Docker
* '''Link:''' ''Im Folgenden ausführlich beschrieben''
* '''Link:''' ''Im Folgenden ausführlich beschrieben''

Aktuelle Version vom 10. August 2025, 20:49 Uhr

Docker-Container

  • Anforderungen: Docker
  • Link: Im Folgenden ausführlich beschrieben

Ähnlich wie beim obigen Ansatz verwenden wir den Nextcloud AIO-Container, um das Hochleistungs-Backend zum Laufen zu bringen.

Systemanforderungen

  • Eine funktionierende Docker-Installation
    • Schauen Sie sich die Docker-Installationsanleitung

Bevor Sie beginnen

Vergewissern Sie sich vor der Installation des Hochleistungs-Backends, dass Sie über die erforderlichen Informationen verfügen:

  • Eine funktionierende Nextcloud-Installation.
    • Wenn Sie noch keine funktionierende Nextcloud-Installation haben, schauen Sie sich bitte Nextcloud All-in-One oder alternativ unsere Installationsdokumentation an.
  • Nextcloud Talk wird aus dem Nextcloud App Store installiert.
    • Wenn Sie Hilfe bei der Installation von Nextcloud Talk benötigen, lesen Sie bitte unsere Dokumentation zur Verwaltung von Apps.
  • Ein korrekt eingerichteter Reverse-Proxy für Ihre Nextcloud-Installation
    • Siehe unsere Dokumentation über Reverse-Proxy.

Installationsschritte

Das folgende Verfahren erklärt, wie Sie das Hochleistungs-Backend mit einem eigenständigen Docker-Container zum Laufen bringen. Es wird der vorgefertigte Container von Nextcloud All-in-One verwendet.

Weitere Informationen darüber, wie Nextcloud All-in-One den Container erstellt, finden Sie im Nextcloud AIO Repository.

Schritt 1 - Geheimnisse erstellen

Das High-Performance-Backend benötigt mehrere Geheimnisse für die Authentifizierung mit der Nextcloud-Instanz. Der Talk-Container von Nextcloud All-in-One benötigt 3 Geheimnisse, um korrekt zu funktionieren:

  • Ein TURN Geheimnis
  • Ein SIGNALING Geheimnis
  • Ein INTERNES Geheimnis

Während Sie die Geheimnisse manuell festlegen, ist es empfehlenswert, eine sichere Zufallszeichenfolge zu erzeugen. Es gibt mehrere Möglichkeiten, dies zu tun, eine der einfachsten ist die Verwendung von openssl:

# openssl rand --hex 32
86a057a959534eb761b20afb4122da6b5475a5f8db20ba16abbb91c65132ca03

Wiederhole das noch 2 Mal, um alle 3 Geheimnisse zu haben.

Für die folgenden Schritte werden wir die Geheimnisse wie folgt bezeichnen:

  • DREH = 1111
  • SIGNALING = 2222
  • INTERNAL = 3333

Bitte stellen Sie sicher, dass Sie die Werte entsprechend ersetzen.

Hinweis

Während der Talk-Container von Nextcloud AIO auch einen TURN-Server enthält (und ein TURN-Geheimnis benötigt), konzentriert sich diese Anleitung ausschließlich auf den HPB-Teil.

Schritt 2 - Starten Sie den Docker-Container

Der folgende Befehl startet den Container, bitte passen Sie den Befehl an Ihre Bedürfnisse an. Zusätzlich zu den generierten Geheimnissen benötigen Sie auch die Domäne Ihrer Nextcloud-Installation und den Port, an dem der Signalisierungsserver lauschen soll.

docker run \
  --name=nextcloud-talk-hpb \
  --restart=always \
  --detach \
  -e NC_DOMAIN=<your_domain> \
  -e TALK_PORT=3478 \
  -e TURN_SECRET=<your_turn_secret> \
  -e SIGNALING_SECRET=<your_signaling_secret> \
  -e INTERNAL_SECRET=<your_internal_secret> \
  -p <your_port>:8081 \
  ghcr.io/nextcloud-releases/aio-talk:latest

Beispiel:

docker run \
  --name=nextcloud-talk-hpb \
  --restart=always \
  --detach \
  -e NC_DOMAIN=nextcloud.domain.invalid \
  -e TALK_PORT=3478 \
  -e TURN_SECRET=1111 \
  -e SIGNALING_SECRET=2222 \
  -e INTERNAL_SECRET=3333 \
  -p 8080:8081 \
  ghcr.io/nextcloud-releases/aio-talk:latest

Schritt 3 - Den Container über den Reverse Proxy zugänglich machen

Der Container muss durch den Reverse-Proxy, der TLS-Offloading durchführt, z.B. als signaling.domain.invalid offengelegt werden. Bitte schauen Sie sich die Beispielkonfigurationen in dem nextcloud-spreed-signaling Repository an.

Überprüfen Sie die Installation

Nachdem Sie alle Installationsschritte abgeschlossen haben, überprüfen Sie bitte, ob der Signalisierungsserver korrekt erreicht werden kann. Dazu können Sie den Begrüßungsendpunkt abfragen:

# curl https://signaling.domain.invalid/api/v1/welcome
{"nextcloud-spreed-signaling":"Welcome","version":"2.0.1~docker"}

Wenn Sie es lokal vom Docker-Host aus überprüfen möchten, können Sie auch den Welcome-Endpunkt abfragen:

# curl http://localhost:8081/api/v1/welcome
{"nextcloud-spreed-signaling":"Welcome","version":"2.0.1~docker"}

Um auch die Logs des Docker-Containers anzuzeigen, verwenden Sie docker logs nextcloud-talk-hpb.

Nach der Installation

Nach erfolgreichem Start des Containers gehen Sie bitte in die administrativen Einstellungen von Talk (/settings/admin/talk), um das High-Performance Backend mit den folgenden Parametern zu konfigurieren:

  • Leistungsstarke Backend-URL: https://signaling.domain.invalid
  • Gemeinsames Geheimnis: 2222 (Das generierte SIGNALING Geheimnis)

Vergewissern Sie sich, dass die Verbindungsprüfung mit einem grünen Häkchen erfolgreich war.

Option TURN

Falls Sie die TURN-Option verwenden möchten, die der Nextcloud AIO-Container bietet, können Sie den Docker-Befehl wie folgt ändern:

docker run \
  --name=nextcloud-talk-hpb \
  --restart=always \
  --detach \
  -e NC_DOMAIN=<your_domain> \
  -e TALK_HOST=<your_signaling_domain> \
  -e TALK_PORT=3478 \
  -e TURN_SECRET=<your_turn_secret> \
  -e SIGNALING_SECRET=<your_signaling_secret> \
  -e INTERNAL_SECRET=<your_internal_secret> \
  -p <your_port>:8081 \
  -p 3478:3478/tcp \
  -p 3478:3478/udp \
  ghcr.io/nextcloud-releases/aio-talk:latest

Beachten Sie, dass wir die Umgebungsvariable TALK_HOST hinzugefügt und zusätzlich den Port TCP 3478 und die UDP-Ports freigegeben haben. Die eingegebene Domäne muss diejenige sein, in der der TURN-Server auf Port 3478 erreichbar ist.

TURN Post Installation

Nach erfolgreichem Start des Containers gehen Sie bitte in die administrativen Einstellungen von Talk (/settings/admin/talk), um den TURN-Server mit den folgenden Parametern zu konfigurieren:

  • turn: only
  • TURN-Server-URL: signaling.domain.invalid:3478 (kein Protokoll)
  • TURN-Server-Geheimnis: 1111 (Das generierte TURN-Geheimnis)
  • UDP and TCP