Hi @karcaw,
This is very cool. Really appreciate all the work you put into this. I have followed along and (with a few tweaks) gotten this to almost work.
I have ollama, nginx, and open-webui running. I can go to the URL (e.g. https://openondemand.fredhutch.org/rnode/gizmoj16/48299/
) and I get a 404, but the 404 comes from open-webui and not apache or nginx.
Hereâs a short video of what happens when I delete OODâs cookies and reload the page - you can see it shows the Open-WebUI splash screen and seems to want to load it, but then it shows the 404.
Looking at the network request in the browserâs dev tools, I donât actually see any 404s. The URL rewriting seems to work for the most part. For example, I can hit the URLs shown there and they work (for example https://openondemand.fredhutch.org/rnode/gizmoj16/48299/manifest.json
).
Of course I can go directly to http://gizmoj16:8080/
and everything works fine, but thatâs not through nginx + OOD.
When I view source on the Open-WebUI page as shown by OOD and the direct-to-8080 version, the contents seem almost the same except for the rewritten URLs; the difference must be something dynamic in the DOM.
In the javascript console I do see a couple of errors that I donât see in the direct-to-8080 version, so maybe those are significant?
In a different browser get a little more info, and this might be a clue:
Seems like maybe the websocket is not being proxied (or having its url rewritten) properly?
In the nginx config there is this line in the location /
section:
sub_filter '/ws' '/rnode/$server_name/${FORWARD_PORT}/ws';
and then below that there is another separate section for the websocket:
location /ws {
proxy_pass http://localhost:8080/ws;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
Could those sections be conflicting somehow?
Appreciate any light you could shed - happy to provide more info if that is needed.
Thanks
Dan
Edited to add - do you know what version of Open-WebUI you are running? Maybe something has changed with it - I could try running the same version as you. I seem to be running v0.6.5 (version number appears after the ascii art in the output.log file).