Skip to content

Run Notebook server for multiple users #2440

Open
@ZelphirKaltstahl

Description

@ZelphirKaltstahl

Disclaimer: This is not really an issue, but more of a question and I did not know where else to ask this (a mailing list?).

I want to deploy one (or more than one) notebook server online, so that many people can access it without login and they all have their own notebook instances of a single notebook file, so that no user sees any modifications of another user or can use their Python kernels with all the variables set. I do not need any login. In fact any login would increase the obstacles to use my notebook and is undesirable in my scenario. I don't want people having to sign up for anything. They shall remain anonymous. I want this for allowing anyone to test my notebook.

I know about the project JupyterHub, however, I'd like to avoid using it for such open structure. From working with JupyterHub before, I know that JupyterHub is a huge amount of unstructured code (thousands of lines in one file, every object talking to every other object, no UML diagrams in documentation to help getting an overview, hard to refactor anything without breaking stuff). It is functioning, but it does much more than I need and on a first search, I could not even find the docs for disabling user logins in it. If I have no choice, I'll use it, but it requires me to dabble in so many different things like user database, which spawner to use, how to configure the spawner, how to disable login completely, resource management per configuration files and probably others.
I'd rather take one or two days and write my own minimal server, on top of some of the minimalistic webservers Python has, which simply uses dockerpy to spawn a container for each visitor of some route on my server with some predefined resource limitation. I'd have to think about how to link an anonymous visitor with the respective container though.

Is there a way to use plain notebook servers (for example inside a docker container) in such an open way for multiple users, without one user being able to see context of another user?
Or maybe any minimal multi user server, which is lightweight in comparison to JupyterHub?
Is writing my own realistic, or is linking visitors to their respective docker containers a difficult task?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions