Doku: notify_push umgesetzt, Docker-NAT für iptables=false.
Sidecar statt Docker Mod, manuelles MASQUERADE via docker-nat-rules.service dokumentiert. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -97,7 +97,7 @@ Client-Versionen (z. B. altes `mirall 3.0.3`) **verstärken** die Last durch hä
|
||||
| **Background-Jobs** | ✅ System-Cron (5 min) | root-crontab |
|
||||
| **VM RAM** | ✅ **12 GB** | `qm set 101 -memory 12288` |
|
||||
| **Separates Redis für notify_push** | ❌ | Optional, erst relevant mit HPB |
|
||||
| **`notify_push` (Rust HPB)** | ❌ nicht installiert | Clients pollen weiterhin aggressiv |
|
||||
| **`notify_push` (Rust HPB)** | ✅ v1.3.3 + Sidecar `nextcloud-notify-push` | Setup OK 2026-06-28; Polling-Reduktion beobachten |
|
||||
| **Preview-/Scan-Jobs** | ❓ ungeprüft | Bei 93 TB NFS potenziell sehr teuer |
|
||||
|
||||
### PHP-FPM (Container-Default)
|
||||
@@ -131,7 +131,7 @@ Es gibt **zwei verschiedene** Rust-Themen; oft verwechselt:
|
||||
| **Problem das es löst** | Clients fragen sonst alle paar Sekunden `index.php/204` / `status.php` ab → PHP-FPM-Last |
|
||||
| **Repo** | https://github.com/nextcloud/notify_push |
|
||||
| **Lizenz** | AGPL, **kostenlos** (nicht Enterprise-only) |
|
||||
| **Aktuell** | App **nicht** in der App-Liste installiert |
|
||||
| **Aktuell** | App **installiert** (v1.3.3), Sidecar auf Port 7867 |
|
||||
| **Voraussetzungen** | Redis (✅ vorhanden), Reverse-Proxy-Weiterleitung für Push-Port, passende Binary-Version zur App |
|
||||
|
||||
**Relevanz für uns:** Sehr hoch — adressiert direkt das Polling-Problem (`index.php/204`, `status.php`), unabhängig von Client-Version.
|
||||
@@ -167,10 +167,10 @@ Aktuelle Releases: v1.3.x (2026), u. a. Fixes gegen DB-Query-Spitzen bei Cache-I
|
||||
- `request_terminate_timeout = 300` (oder 600) — verhindert ewig hängende Worker
|
||||
- ggf. `pm.max_requests = 500` — Worker regelmäßig recyclen
|
||||
|
||||
2. **`notify_push` evaluieren & deployen**
|
||||
- App installieren, Binary + Proxy-Route
|
||||
- Test: `occ notify_push:setup` / Self-Test-Tools aus dem Repo
|
||||
- Erwartung: deutlich weniger `index.php/204`-Traffic in Nginx-Logs
|
||||
2. **`notify_push` evaluieren & deployen** ✅ (2026-06-28, Sidecar)
|
||||
- App v1.3.3 manuell, Sidecar `ghcr.io/nextcloud/notify_push` mit `network_mode: service:nextcloud`
|
||||
- `occ notify_push:setup` — alle Checks grün
|
||||
- Erwartung: deutlich weniger `index.php/204`-Traffic in Nginx-Logs (24h beobachten)
|
||||
|
||||
3. **APCu vergrößern**
|
||||
- `apc.shm_size` von 32 MB → **128 MB** (Custom-PHP-Ini im Linuxserver-Config-Volume)
|
||||
@@ -203,6 +203,25 @@ Aktuelle Releases: v1.3.x (2026), u. a. Fixes gegen DB-Query-Spitzen bei Cache-I
|
||||
|
||||
---
|
||||
|
||||
## Docker-Netzwerk (VM 101)
|
||||
|
||||
Docker läuft mit `"iptables": false` in `/etc/docker/daemon.json` — **absichtlich**, damit Docker die fest zugewiesenen IPs auf `docbr0` (z. B. Nextcloud `10.2.2.253`, NPM `10.2.2.254`) nicht überschreibt.
|
||||
|
||||
**Folge:** Docker setzt **kein NAT/MASQUERADE** für Bridge-Netze. Ohne manuelle Regeln haben Container kein ausgehendes Internet (App Store, Docker Mods, `curl` zu GitHub schlagen fehl).
|
||||
|
||||
**Lösung (seit 2026-06-28):** Systemd-Service `docker-nat-rules.service` + Skript `/usr/local/sbin/docker-nat-rules.sh`:
|
||||
|
||||
- `MASQUERADE` für `10.2.2.0/24` (docbr0) und `172.16.0.0/12` (Docker-Bridges) → `eth0`
|
||||
- Läuft nach Boot/`docker.service`, ändert **nicht** `iptables: true`
|
||||
|
||||
```bash
|
||||
sudo systemctl status docker-nat-rules
|
||||
sudo iptables -t nat -S POSTROUTING
|
||||
sudo docker exec nextcloud curl -sI https://github.com | head -1
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Nützliche Befehle
|
||||
|
||||
```bash
|
||||
@@ -241,11 +260,11 @@ cd /opt/stacks/nextcloud && docker compose ps
|
||||
|
||||
Details und Befehle: **[migration/nextcloud-optimierung-und-updates.md](../migration/nextcloud-optimierung-und-updates.md)**
|
||||
Freigabe Phase F+G: **[migration/nextcloud-tuning-freigabe.md](../migration/nextcloud-tuning-freigabe.md)** (✅ umgesetzt)
|
||||
Freigabe notify_push: **[migration/nextcloud-notify-push-freigabe.md](../migration/nextcloud-notify-push-freigabe.md)** (⏳ offen)
|
||||
Freigabe notify_push: **[migration/nextcloud-notify-push-freigabe.md](../migration/nextcloud-notify-push-freigabe.md)** (✅ umgesetzt 2026-06-28)
|
||||
|
||||
- [x] PHP-FPM `www2.conf` angepasst + Container recreate
|
||||
- [x] `apc.shm_size` auf 128 MB
|
||||
- [x] System-Cron für `occ background:cron` eingerichtet
|
||||
- [x] VM-RAM 12 GB
|
||||
- [ ] `notify_push` — siehe [Freigabe-Dokument](../migration/nextcloud-notify-push-freigabe.md)
|
||||
- [ ] Nach Änderungen: Nginx-Access-Log auf Polling-Frequenz prüfen
|
||||
- [x] `notify_push` — Sidecar + App v1.3.3, `trusted_proxies` + `127.0.0.1`
|
||||
- [ ] Nach Änderungen: Nginx-Access-Log auf Polling-Frequenz prüfen (24h)
|
||||
|
||||
Reference in New Issue
Block a user