-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
qiime2view does not work if Galaxy is behind a firewall #38
Comments
Alternatively I might ask our admins if certain URLs may be exempted from the firewall rules. |
Some more alternatives:
|
Just had another idea: In galaxy there is a In my case I have a nginx directive:
Problem is then that within q2view there seem to be many relative path (eg. Now I'm wondering if there is a better way to do this, i.e. serving q2view from a subdir of the webserver.... @ebolyen do you have an idea or know someone who could help? |
As a workaround: galaxyproject/tools-iuc#4834 |
Hey @bernt-matthias, Sorry for having missed this issue! I'm going to write a big comment with inline quotes.
This isn't quite possible because q2view is actually a static website with a ton of javascript to invent a client-side web-server (via a Service Worker) that makes the browser think it's talking to a server (when it's actually just a QZV).
This is probably the best bet for most people. q2view doesn't upload any actual data to any actual server, although I can definitely respect that some sysadmins are indifferent to that claim (it is a website that in principle, could do anything with the data).
I think that's probably the best long-term solution, I just had absolutely no idea how to go about it. Thanks for the resources!
That should work too, although now you have to build q2view from a webpack config I haven't touched in some time. So it's unlikely to be pleasant.
That should in principle work just fine. But I'll need to modify the aforementioned webpack config to tolerate relative root directories for the application. Not the end of the world, but definitely all of the pain that comes with updating and compiling a javascript project from the 2016-18 era of webdev w/ webpack.
This looks great to me! And is indeed exactly all q2view ever did. I assume Galaxy has some provision to avoid client-side attacks from running arbitrary HTML such as an alternative domain or port? (I promise we aren't nefarious, but we'd hate to be the cause of any issues.) Also the That's actually something that causes enough issues in practice we'll probably at some point just expect that visualizations are running in an HTTP hosted directory. |
Thanks for the detailed comments. In the long run a generic/viz plugin in Galaxy could be nice... but I guess it will need time to develop it which is scarce.
Cool. Wondering if a tighter integration in the qiime tools would be an idea? With the additional tool an extra tool run would be needed to extract the qzv to html. Maybe all tools generating qzv could just have an extra/alternative output (ie the html file). Might be more userfriendly... Btw. are qzv files dead ends or are there tools that can process qzv further?
I don't know. By default the html page will not be rendered at all, but admins will need to put the tool on an allowlist. If this is done I'm not sure if there are any security measures. I will ask in the Galaxy gitter channels. |
If Galaxy is behind a firewall, then the qiime2view visualization does not work. Currently the visualization sends a link to the viz website which does not work in such a setup.
Wondering if it is possible to rewrite the viz plugin such that it sends the data directly .. and if the qiime2view website would support getting data directly.
The text was updated successfully, but these errors were encountered: