How to setup Seafile with Caddy on NixOS
This is going to be a more simplified and approachable way on how to set up Seafile with Caddy on NixOS.
In the documentation of Seafile in NixOS, they use nginx as a reverse proxy. But as nginx and caddy are somehow not compatible with each other (I assume because both want to access ports 443 and 80).
Here is the rewritten configuration for Caddy in NixOS, which is fully compatible and easier to understand:
"seafile.cashmere.rs" = { extraConfig = '' # Seafile Fileserver handle_path /seafhttp/* { uri strip_prefix /seafhttp reverse_proxy unix//run/seafile/server.sock { header_up X-Forwarded-For {http.request.remote} transport http { read_timeout 36000s write_timeout 36000s } } } # Seahub Webinterface reverse_proxy unix//run/seahub/gunicorn.sock { header_up Host {http.request.host} transport http { read_timeout 1200s } } ''; };
Happy Hacking!