Hi,
TLDR: We wan’t to enable collaboration on a filesystem shared between jupyter-servers. Is there a way to make jupyter-collaboration work in this context (single filesystem, mutliple separated server). If not, is it possible to make jupyterlab lock the underlying file (via flock or similar) on notebook opening and realeasing the lock on closing ?
Now for the long version with context and why we want that.
We have a working instance of jupyterhub running where singleuser server are run in docker containers. Container’s storage is split in two:
- the personal storage which is assured to be bind/mounted in a single container
- Shared storage which is bind/mounted in multiple containers. This storage is mainly used to share data between users. For the moment all the containers are on the same host but in the end, this storage will be mounted as nfs.
We would like to allow users to collaborate on notebooks stored in their shared storage. But , from what i understand of the documentation, the jupyter-collaboration extension is not designed to be used in this context.
From my very limited understanding of it, it expect all users to be in a single server.
Is there a way to make the jupyterhub-collaboration work with multiple server working on the same underlying file (by putting the database in a shared directory or using a single external database server or other hacky way) ?
In the very likely case there is no easy solution, is there a way to at least force jupyterlab to lock files on opening (via flock or vim like .swap files) and unlock them on closing to limit the risk of collisions in these shared directories ?
English is not my first language, If anything is poorly worded or unclear, feel free to point it out, i’ll do my best to rephrase it correctly.
Thanks a lot in advance.