Dieses Setup beinhaltet die vollständige Konfiguration für das Hochleistungs-Backend von Nextcloud Talk: - Signaling Server (spreed-signaling) - Coturn (TURN/STUN) - Reverse Proxy via Traefik - SSL via Let's Encrypt
docker-compose.yml server.conf # Signaling Config turnserver.conf # Coturn Config
version: "3.8" services: signaling: image: strukturag/nextcloud-spreed-signaling container_name: signaling restart: unless-stopped ports: - "8080:8080" volumes: - ./server.conf:/config/server.conf networks: - docker_backend environment: - DOMAIN=talk.example.org - SIGNALING_SECRET=SuperSecret123 - NATS_ENABLED=false labels: - "traefik.enable=true" - "traefik.http.routers.talk.rule=Host(`talk.example.org`)" - "traefik.http.routers.talk.entrypoints=websecure" - "traefik.http.routers.talk.tls.certresolver=le" - "traefik.http.services.talk.loadbalancer.server.port=8080" - "traefik.docker.network=docker_backend" coturn: image: instrumentisto/coturn restart: always networks: - docker_backend ports: - "3478:3478/udp" - "3478:3478" volumes: - ./turnserver.conf:/etc/coturn/turnserver.conf command: ["-c", "/etc/coturn/turnserver.conf"] networks: docker_backend: external: true
listen = 0.0.0.0:8080 tls_listen = 0.0.0.0:8443 tls = false shared-secret = SuperSecret123 http-origin = * nats-enabled = false
listening-port=3478 fingerprint use-auth-secret static-auth-secret=SuperSecret123 realm=talk.example.org total-quota=100 bps-capacity=0 stale-nonce no-loopback-peers no-multicast-peers cli-password=SuperSecret123
| Fehlerbild | Ursache | Lösung |
| ———– | ——— | ——– |
502 Bad Gateway | Signaling nicht gestartet oder crashed | Volume prüfen, Config korrekt referenziert (/config/server.conf) |
Could not create connection (nats: no servers...) | Default NATS-Loopback aktiv | Setze nats-enabled = false in der server.conf |
Connection refused auf Port 8080 | Container hat Config nicht geladen | docker exec -it signaling cat /config/server.conf prüfen |
| Coturn TLS-Zertifikatsfehler | Datei nicht vorhanden | Coturn nicht mit TLS starten oder TLS über Traefik absichern |
Docker restarting Loop | Falscher Pfad in Volume-Zuweisung | volumes:-Abschnitte prüfen auf absolute vs. relative Pfade |
/healthz liefert 404 | Endpoint existiert nicht bei diesem Image | Ist normal, keine Problemquelle |
# Signaling curl -vk https://talk.example.org # TURN echo "Test" | openssl s_client -connect talk.example.org:3478
# Container Logs docker logs -f signaling docker exec -it signaling sh # curl intern im Container apk add curl curl -v http://127.0.0.1:8080/
Erstelle regelmäßig ein Backup dieser Dateien:
docker-compose.ymlserver.confturnserver.conf.env falls vorhanden
Lars Weiß 04.06.2025 11:27