Plasma is built with The Littlest JupyterHub (TLJH) and uses Docker containers to start the user servers.

The project provides:

  • A TLJH plugin with a predefined JupyterHub configuration

  • Ansible playbooks to automate the deployment on a new server

  • Documentation for the plugin and the Ansible playbooks

Plasma can be seen as an opinionated TLJH distribution:

  • It gives admin users the possibility to configure multiple user environments backed by Docker images

  • It provides an interface to build the user environments, accessible from the JupyterHub panel, using tljh-repo2docker

  • It uses PAM as the authenticator, and relies on system users for data persistence (home directories) and authentication

  • It provides additional Ansible Playbooks to provision the server with extra monitoring tools

Here is an overview of all the different components and their interactions after Plasma has been deployed on a new server:

Overview Diagram

The JupyterHub Documentation#

Since Plasma is built on top of JupyterHub and The Littlest JupyterHub distribution, it benefits from its community and high quality documentation.

For more information on these projects: