Der JupyterHub ist der zentrale Anlaufpunkt und verwaltet die Benutzer und JupyterLab-Server. Hier wird der Aufbau von JupyterHub näher betrachtet:
- Anmeldung: JupyterHub verwendet den zentralen Anmeldedienst UHH Login der Universität Hamburg, um Benutzer zu identifizieren und Zugangsberechtigungen zu verwalten.
-
Spawning: Ein Benutzer erhält eine neue Instanz des JupyterLab-Servers auf einem dedizierten Server oder - Cluster und kann mit ihr arbeiten. Wir verwenden hierfür Docker und erzeugen damit neue pro Benutzer einen Container.
-
Docker: Eine Softwarelösung, um Anwendungen isoliert von anderen in Containern auszuführen. Jeder Container enthält die Anwendung und alle ihre Abhängigkeiten, so dass jede Anwendung auf einem beliebigen System gleich funktioniert.
Ein Docker Image ist die Grundlage, auf der ein Container lauft und aus denen alle weiteren Container erzeugt werden. Es enthält alle Informationen, um das System zu starten, darunter Dateisystem, Konfigurationen und andere Softwarepakete. - JupyterLab: Die Web-Oberfläche für Jupyter Notebooks und andere Projekte, die in einem Browser laufen. Es bietet eine Benutzeroberfläche mit Funktionen wie Texteditoren, Terminals, Datenspeicher und -verwaltung, Tabellen, Diagramme usw.