Skip to main content

Jupyterpool

Jupyterpool maintains a pool of remote Jupyter servers and kernels living on a Kubernetes cluster. This allows to get instant Jupyter Kernels and Servers. It removes the cold-start issue when launching a notebook on Binder, JupyterHub or Enterprise Gateway. The provided functionalities available on the ready to be used servers and kernels are:

  • Mount datasets.
  • User can join instantly and use the server and kernels resources without waiting the cold-start.
  • User can invite other users and control the permissions they give them.

Jupyterpool runs on Kubernetes.

Jupyterpool source code - MIT license.

Auth#

Jupyter Auth provides Authentication (aka Identity) and Authorization (aka Permissions) primitives to your Jupyter applications. A multi-user Jupyter Server is secured with JWT Token based authentication.

  • External authentication (e.g. GitHub...) can be configured.
  • External authorization (e.g. OPA) can be configured.

Authentication Flow#

  • Browser -> jupyter-server -> redirects to github
  • Browser -> github authenticates -> grant permission -> multi-user jupyter-server gets user github profile -> multi-user jupyter-server creates jwt token and update server session
  • Browser -> read/write/execute -> authorization request to open-policy-agent server -> everyone can read and write -> only 'hireable' can run cells

Authorization Flow#

Authorization Flow

๐Ÿšง Work in Progress#

  • Better user notification.
  • Token renewal.

Jupyter Auth source code - MIT license.

Content#

Jupyter Content is a library to create, access and share in a secure way your dataset and code files in cloud buckets. It works well with the Jupyter Auth and Jupyterpool components.

Jupyter Content source code - MIT license.

๐Ÿšง Jupyter Federation#

Jupyter Federation aims to combine resources of distinct organisations to build a more global data project with the needed security.

Jupyter Federation source code - MIT license.

Admin#

Jupyter Admin is a Command Line Interface (CLI) and User Interface (UI) to manage the Datalayer Jupyter components. It provides facilities to the Datalayer Jupyter components to:

  • Deploy and install.
  • Configure.
  • Monitor.
  • Manage.

Jupyter Admin source code - MIT license.