Caddy in front of app’s Nginx via Docker Compose

Just a correction/clarification to what I said above.

When I originally described the result as a:

more mobile-friendly forum, part of what I had noticed was that the initial round trip when opening the iOS Safari PWA had previously felt too slow.


However, I now regret including this statement in my later reply:

Disabling 0-RTT was something I tried while diagnosing the client-IP problem, but it does not appear to have been necessary. Both of the PostgreSQL errors involving unix: continued while 0rtt off was already configured.

The change that appears to have resolved those errors was instead the persistent app.yml hook which modifies nginx so that it uses Caddy’s X-Forwarded-For value for the real client IP when requests arrive over the Unix socket.

I have therefore now removed the 0rtt off setting and restored Caddy’s default behaviour. HTTP/3 is still working and the correct client IP is continuing to pass through to Discourse.

So if there is eventually enough interest for me to put together the step-by-step guide, I would not include disabling QUIC 0-RTT as a required part of the configuration.