Benutzer-Werkzeuge

Webseiten-Werkzeuge


nextcloud:notify_push

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
nextcloud:notify_push [2026/07/27 10:03] – [3.4 Keine Verwendung von –glob-config bei] franznextcloud:notify_push [2026/07/27 10:18] (aktuell) – [11. Client prüfen] franz
Zeile 314: Zeile 314:
  
 Der Push-Container ruft Nextcloud intern über den Service-Namen auf: Der Push-Container ruft Nextcloud intern über den Service-Namen auf:
-<code> 
  
 +<code>
 NEXTCLOUD_URL: "http://<APP_SERVICE>" NEXTCLOUD_URL: "http://<APP_SERVICE>"
  
Zeile 322: Zeile 322:
 Nextcloud muss daher: Nextcloud muss daher:
  
-  -+  - das interne Docker-Netz als Proxy vertrauen und 
 +  - den internen Service-Namen als Domain akzeptieren.
  
-das interne Docker-Netz als Proxy vertrauen und+==== 6.1 Docker-Netzwerk und Subnetz ermitteln ====
  
-  -+<code> 
 +NETWORK=$(docker inspect <APP_CONTAINER>
 +  --format '{{range $name, $conf := .NetworkSettings.Networks}}{{$name}}{{end}}')
  
-den internen Service-Namen als Domain akzeptieren.+SUBNET=$(docker network inspect "$NETWORK"
 +  --format '{{range .IPAM.Config}}{{.Subnet}}{{end}}'
 + 
 +echo "Netzwerk: $NETWORK" 
 +echo "Subnetz:  $SUBNET" 
 + 
 +</code> 
 + 
 +Beispiel: 
 + 
 +Netzwerk: privat_privat-network \\ Subnetz:  172.29.0.0/16 
 + 
 +==== 6.2 Bestehende Proxy-Einträge prüfen ==== 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  config:system:get trusted_proxies 
 + 
 +</code> 
 + 
 +Beispiel: 
 + 
 +127.0.0.1 
 + 
 +==== 6.3 Docker-Subnetz ergänzen ==== 
 + 
 +Den nächsten freien Index verwenden: 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  config:system:set trusted_proxies 1 --value="$SUBNET" 
 + 
 +</code> 
 + 
 +Kontrolle 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  config:system:get trusted_proxies 
 + 
 +</code> 
 + 
 +erwartet wird beispielsweise 
 + 
 +127.0.0.1 \\ 172.29.0.0/16 
 + 
 +**Nur kontrollierte Proxy-Adressen oder interne Docker-Netze eintragen. Vertrauenswürdige Proxys dürfen die von Nextcloud erkannte Client-IP beeinflussen.** 
 + 
 +===== 7. Internen Service-Namen als Trusted Domain eintragen ===== 
 + 
 +Vorhandene Einträge prüfen 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  config:system:get trusted_domains 
 + 
 +</code> 
 + 
 +Den Service-Namen mit dem nächsten freien Index ergänzen: 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  config:system:set trusted_domains 1 --value="<APP_SERVICE>" 
 + 
 +</code> 
 + 
 +Kontrolle 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  config:system:get trusted_domains 
 + 
 +</code> 
 +===== 8Verbindung testen ===== 
 + 
 +==== 8.1 Containerstatus ==== 
 + 
 +<code> 
 +docker compose ps notify_push 
 +docker compose logs --tail=100 notify_push 
 + 
 +</code> 
 +==== 8.2 Lokaler Port ==== 
 + 
 +<code> 
 +curl -i http://127.0.0.1:7867/test/cookie 
 + 
 +</code> 
 + 
 +eine Antwort wie 
 + 
 +HTTP/1.1 400 Bad Request 
 + 
 +ist bei einem direkten Aufruf über ''127.0.0.1'' möglich und zeigt bereits, dass der Push-Daemon antwortet. 
 + 
 +''Connection refused'' bedeutet dagegen: 
 + 
 +   * Container läuft nicht, 
 +  * Container startet ständig neu, 
 +  * Port ist nicht veröffentlicht oder 
 +  * kein Prozess lauscht im Container auf Port ''7867''
 + 
 +==== 8.3 Öffentlicher Pfad ==== 
 + 
 +<code> 
 +curl -i https://<DOMAIN>/push/test/cookie 
 + 
 +</code> 
 +===== 9.   notify_push  konfigurieren ===== 
 + 
 +Setup über den öffentlichen Push-Endpunkt ausführen: 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  notify_push:setup https://<DOMAIN>/push 
 + 
 +</code> 
 + 
 +erwartetes Ergebnis 
 + 
 +✓ redis is configured \\ ✓ push server is receiving redis messages \\ ✓ push server can load mount info from database \\ ✓ push server can connect to the Nextcloud server \\ ✓ push server is a trusted proxy \\ ✓ push server is running the same version as the app \\ configuration saved 
 + 
 +Gespeicherten Endpunkt prüfen: 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  config:app:get notify_push base_endpoint 
 + 
 +</code> 
 + 
 +erwartet wird 
 + 
 +https://<DOMAIN>/push 
 + 
 +===== 10. Firewall ===== 
 + 
 +Port ''7867''  wird nur an Loopback gebunden: 
 + 
 +<code> 
 +ports: 
 +  - "127.0.0.1:7867:7867" 
 + 
 +</code> 
 + 
 +Daher ist keine öffentliche UFW-Freigabe nötig. 
 + 
 +===== 11. Client prüfen ===== 
 + 
 +Nach erfolgreichem Setup: 
 + 
 +  - Nextcloud Desktop oder Nextcloud Talk Desktop vollständig abmelden. 
 +  - Client auch im Infobereich beziehungsweise Tray beenden. 
 +  - Client neu starten. 
 +  - Konto erneut anmelden. 
 +  - Diagnose prüfen. 
 + 
 +Die Diagnose sollte nicht mehr melden: 
 + 
 +<code> 
 +notify_push app enabled = no 
 + 
 +</code> 
 + 
 +Metriken des Push-Dienstes prüfen: 
 + 
 +<code> 
 +docker compose exec -u www-data <APP_SERVICE> php occ \ 
 +  notify_push:metrics 
 + 
 +</code>
  
  
nextcloud/notify_push.1785139437.txt.gz · Zuletzt geändert: von franz

Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki