Skip to content
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

OpenRefine running "natively" on Binderhub #3

Open
psychemedia opened this issue Apr 25, 2018 · 9 comments
Open

OpenRefine running "natively" on Binderhub #3

psychemedia opened this issue Apr 25, 2018 · 9 comments

Comments

@psychemedia
Copy link
Contributor

psychemedia commented Apr 25, 2018

Hi

I was wondering if there's a way of defining a Binder build so that rather than OpenRefine being launched via a Jupyter menu, OpenRefine, rather than Jupyter notebook homepage, is the default "first class" service page when the repo is lanuched via Binderhub.

Does Binderhub require that a Jupyter notebook service is running, or can Binderhub be used to launch arbitrary services (such as a standalone OpenRefine application?).

@psychemedia
Copy link
Contributor Author

I think this relates to jupyterhub/binderhub#258

@betatim
Copy link
Owner

betatim commented Apr 26, 2018

I think binderhub respects the command set in a Dockerfile which means you could launch OpenRefine directly. All it really cares about is that a web server appears on the specified IP and port.

There is some discussion on setting the command here jupyterhub/mybinder.org-user-guide#87

@felixlohmeier
Copy link
Contributor

I think this issue is solved by #8 or what does "first class" mean actually?

@betatim
Copy link
Owner

betatim commented Aug 23, 2019

I think what @psychemedia was thinking of is that you don't get the Jupyter notebook interface when you start a binder, but instead directly see OpenRefine. The "native" (to me) means that you talk directly to OpenRefine instead of via the proxy that we use.

@felixlohmeier
Copy link
Contributor

Ah, thanks, now I get it.

... that you don't get the Jupyter notebook interface when you start a binder, but instead directly see OpenRefine

This is solved by the "quickstart" link in the readme with urlpath=/openrefine: https://mybinder.org/v2/gh/betatim/openrefineder/master?urlpath=%2Fopenrefine

The "native" (to me) means that you talk directly to OpenRefine instead of via the proxy that we use.

As you wrote above in comment #3 (comment) it would be possible to launch OpenRefine natively (without the proxy) via Dockerfile config but I don't see any advantages from a user perspective.

@betatim
Copy link
Owner

betatim commented Aug 26, 2019

re: native openrefine

Another thing to consider if we wanted to do this: we need some kind of proxy that understands how to update the "this container is still active" timestamp of JupyterHub so I think you wouldn't gain much.

@psychemedia
Copy link
Contributor Author

I think what I actually meant was a more of a limiting case example - a way of launching and running OpenRefine from MyBinder using a Dockerfile built container that didn't include a Jupyter server.

The question I had in mind was: can I use Binderhub to launch arbitrary containerised applications with http UIs.

From @betatim's comment, I guess this means any such container would need some sort of heartbeat shim to keep JupyterHub happy?

Something like:

image

???

@betatim
Copy link
Owner

betatim commented Aug 28, 2019

From @betatim's comment, I guess this means any such container would need some sort of heartbeat shim to keep JupyterHub happy?

Nods. That is my understanding, I've never experimentally verified this though and with software you never know.

@psychemedia
Copy link
Contributor Author

If I understand it correctly, jhsingle-native-proxy provides a shim for/wrapper around an arbitrary app that looks like a Jupyter server without requiring a Jupyter server.

When it first came out I think I tried to wrap OpenRefine with it, but IIRC didn't have much success at the time. Code / examples / docs may have moved on since then, so I'll try it again when I get a chance. (This is just a placeholder / reminder to self for that...)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants