▲ 2 r/NextCloud
Hi everyone,
I've been trying to improve my Nextcloud transfer speeds and I'm a bit stuck. Here's my setup and what I've tested so far.
My setup:
- Windows 11 host with Docker Desktop (WSL2 backend)
- Nextcloud running in Docker with PHP-FPM + Nginx
- External storage mounted via local mount (not SMB anymore)
- Uplink speed: close to 1 Gb/s
- Raw disk read speed: ~500 MB/s
The problem: When downloading files from Nextcloud remotely, I'm capped at around 30 Mb/s regardless of the file size or type. I also tested with a file stored on Nextcloud's internal storage (not external), same result.
What I've already tested/ruled out so far:
- ✅ Switched from standard Nextcloud (Apache) to Nextcloud FPM + Nginx - no improvement
- ✅ NPM (Nginx Proxy Manager) is not the bottleneck - same speed bypassing it via Wireguard
- ✅ Disk read speed is not the bottleneck (~500 MB/s raw)
- ✅ PHP memory/upload limits are fine (512M)
- ✅ External storage is not the issue (same speed with internal storage)
- ✅ SMB from the same server gives ~50 Mb/s, so the network itself can do better than 30
- ⚠️ WSL2 networking overhead is suspected but not confirmed
My suspicion: WSL2's virtualized network layer might be adding overhead, but I'm not sure how to work around that without switching to a bare Linux install.
Has anyone managed to get significantly better speeds with a similar Docker/WSL2 setup? Or is there any Nextcloud/PHP-FPM tuning I might be missing?
Thanks!
u/ElPaul0 — 17 days ago