Enabling Real Time Collaboration
-
Hi,
How can I enable real time collaboration in JupyterHub?
The doc (https://jupyterlab.readthedocs.io/en/stable/user/rtc.html) saysEditors are not collaborative by default; to activate it, start JupyterLab with the
--collaborativeflag.How can I do that in a Cloudron env?
Thanks,
Camille -
Hi,
How can I enable real time collaboration in JupyterHub?
The doc (https://jupyterlab.readthedocs.io/en/stable/user/rtc.html) saysEditors are not collaborative by default; to activate it, start JupyterLab with the
--collaborativeflag.How can I do that in a Cloudron env?
Thanks,
Camille -
@jdaviescoates Thanks.
It's not clear to me what parameters can be changed in /app/data/customconfig.py
besidesc.Spawner.mem_limitandc.DockerSpawner.container_image.
I searched in https://jupyterhub.readthedocs.io/en/stable/search.html?q=collaborative but didn't find many clues.
I'll tryc.Spawner.cmd = 'jupyter-lab --collaborative'but that'll be mostly guesswork
-
@jdaviescoates Thanks.
It's not clear to me what parameters can be changed in /app/data/customconfig.py
besidesc.Spawner.mem_limitandc.DockerSpawner.container_image.
I searched in https://jupyterhub.readthedocs.io/en/stable/search.html?q=collaborative but didn't find many clues.
I'll tryc.Spawner.cmd = 'jupyter-lab --collaborative'but that'll be mostly guesswork
@Camille I think the collaborative flag only works with BinderHub - https://github.com/jupyterhub/binderhub . With JupyterHub, I think https://github.com/jupyterhub/jupyterhub/issues/394 was the issue tracker task to fix this , but it didn't progress far.
Also, to pass extra args, use something like this in customconfig.py:
c.Spawner.environment = { 'NOTEBOOK_ARGS': '--collaborative' }(this comes from https://github.com/jupyter/docker-stacks/blob/master/base-notebook/start-notebook.sh#L26 and https://github.com/jupyterhub/jupyterhub/blob/dcf21d53fd9e6c131a269550c0a46f08ca9df5bb/docs/source/reference/spawners.md#environment-variables-and-command-line-arguments
-
@Camille I think the collaborative flag only works with BinderHub - https://github.com/jupyterhub/binderhub . With JupyterHub, I think https://github.com/jupyterhub/jupyterhub/issues/394 was the issue tracker task to fix this , but it didn't progress far.
Also, to pass extra args, use something like this in customconfig.py:
c.Spawner.environment = { 'NOTEBOOK_ARGS': '--collaborative' }(this comes from https://github.com/jupyter/docker-stacks/blob/master/base-notebook/start-notebook.sh#L26 and https://github.com/jupyterhub/jupyterhub/blob/dcf21d53fd9e6c131a269550c0a46f08ca9df5bb/docs/source/reference/spawners.md#environment-variables-and-command-line-arguments
-
Reading https://github.com/jupyterhub/jupyterhub/issues/3578 and https://discourse.jupyter.org/t/jupyterhub-collaboration-and-tags/11259
it seems that collaborative flag would also work with JupyterHub.
It tried addingc.LabApp.collaborative = Truein customconfig.py with no luck.
I'll investigate more thouroughly later. -
Reading https://github.com/jupyterhub/jupyterhub/issues/3578 and https://discourse.jupyter.org/t/jupyterhub-collaboration-and-tags/11259
it seems that collaborative flag would also work with JupyterHub.
It tried addingc.LabApp.collaborative = Truein customconfig.py with no luck.
I'll investigate more thouroughly later. -
So, from https://jupyter.org/binder , "BinderHub is a web application that allows users to create sharable, interactive, reproducible environments from code repositories" . Docs are here - https://binderhub.readthedocs.io/en/latest/ . There is says "BinderHub is a kubernetes-based cloud service that allows users to share reproducible interactive computing environments from code repositories." .
I think we need to understand how all this ties into this "token" for collaboration.
-
@Camille The sharing involves using this "token" for authentication which I think works only on Binder. I am not 100% sure about this though, documentation is very sparse.
-
Hi @girish Token authentication works great on our Cloudron JupyterHub. We can share notebooks fine but with no real time collaboration: we just get the usual overwrite problems.
-
@Camille Oh, that's interesting. Can you tell me how you enabled it and how you made it work ? (i.e just shared notebooks without real time)
@girish Actually, I'm not really sure how we got there

I have installed the https://github.com/jupyterlab-contrib/jupyterlab-link-share extension, which kind of works, but we have to manually add the token to the URL it provides.
So maybe it enabled settings in the background.
I will try to redo it from a fresh install and keep you posted. -
Adding the following to
/app/data/customconfig.pyworked for me:c.Spawner.args = ['--collaborative']You also need to run
/app/code/remove_notebook_containers.pyafter making changes.For a list of parameters check out: https://jupyterhub.readthedocs.io/en/stable/api/spawner.html
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login