This is on a LAN. Yes I can set up a reverse proxy, but I am hoping to make it work as is. However reverse proxy may solve this issue as nginx is already running and reachable via LAN.
OK I solved it by remembering something from very early Seafile versions. When you install it it does not create its own directory but installs its directories in whichever location you ran the installation script and that you have ownership of.
So, find conf directory (mine was in the user home directory) and in there find gunicorn.conf file and make sure this line reads like so:
# default localhost:8000
bind = "0.0.0.0:8000"
Restart seafile and seahub.
If you are going to move the seafile directories into their own location, make sure you edit the pids path in the gunicorn.conf to point to wherever you placed them.
It might be good hardening policy but it needs mentioning clearly in the documentation. I’ve spent several hours trying to fix this problem. I’m not a Linux guru so assumed I’d done something wrong. I even built another Ubuntu VM to test it out - I was using Mint before.