Nextcloud/Talk/HPB/Docker
<== 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
= 1111SIGNALING
= 2222INTERNAL
= 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 generierteSIGNALING
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 generierteTURN
-Geheimnis) UDP and TCP