JupyterHub
Übersicht
JupyterHub ist eine serverbasierte Anwendung, um Jupyter-Notebooks zentral in einem Neztwerk zur Verfügung zu stellen. Nährere Informationen über JupyterHub findet man zum Beispiel hier.
In der Schule könnte es sich eventuell anbieten, JupyterHub zum Beispiel auf einem zentralem Server zu installieren, auf den die SuS dann zugreifen können, ohne dass Juptyer-Notebook dazu auf jedem einzelnen Arbeitsplatzrechner installiert sein müsste. JupyterHub bietet direkt auch eine eigene User:innen-Verwaltung an (was allerdings natürlich auch einen gewissen Administrationsaufwand bedeutet).
Installation
Unter Debian-basierten Linux-Distributionen (wie zum Beispiel Rasbian auf einem Raspberry-Pi) kann JupyterHub wie folgt installiert werden.
Installation von JupyterHub
sudo apt update && apt upgrade -y
sudo apt-get install npm nodejs-legacy
npm install -g configurable-http-proxy
python3 -m pip install jupyterhub
python3 -m pip install --upgrade notebook
Generieren einer Konfigurations-Datei (optional)
jupyterhub --generate-config
Durch diesen Befehl wird eine zunächst noch leere Konfigurationsdatei jupyterhub_config.py
erzeugt, über die bei Bedarf JuptyerHub konfiguriert werden kann.
Anlegen von Usern
sudo adduser <username1>
usw.
Durch diesen Befehl werden zunächst Linux-User angelegt. Diese werden beim nächsten Start von JupyterHub dann allerdings auch automatisch zu JupyterHub-Usern. Die erzeugten Dateien werden dann automatisch im jeweiligen Home-Verzeichnis der jeweiligen UserIn abgelegt.
Starten von JupyterHub
sudo jupyterhub
Falls eine optionale Konfigurationsdatei verwendet wird, lautet der Startbefehl
sudo jupyterhub -f jupyterhub_config.py
Einloggen und Verwendung von Jupyter-Notebooks
http://<ip des Jupyterhub-Servers>:8000
Unter dieser URL kann nun JupyterHub von einem beliebigen Rechner im lokalen Netzwerk aufgerufen werden. Es erscheint dann eine Anmeldeseite, auf der sich die SuS mit ihren individuellem Login und Passwort anmelden können. Anschließend öffnet sich dann Jupyter-Notebook und erzeugte Dateien werden automatisch im jeweiligen Homeverzeichnis abgespeichert.