marcusianlevine.jupyterhub-container

jupyterhub-container

Fügt einen Jupyter Hub-Dienst zu deinem Ansible Container Projekt hinzu. Führe die folgenden Befehle aus, um den Dienst zu installieren:

# Wechsle in das Verzeichnis deines Ansible Container Projekts
$ cd meinprojekt

# Installiere den Dienst
$ ansible-container install marcusianlevine.jupyterhub-container

Anforderungen

  • Ansible Container
  • Ein bestehendes Ansible Container Projekt. Um ein Projekt zu erstellen, führe einfach Folgendes aus:
    # Erstelle ein leeres Projektverzeichnis
    $ mkdir meinprojekt
    
    # Wechsle in das neue Verzeichnis
    $ cd meinprojekt
    
    # Initialisiere das Projekt
    $ ansible-container init
    

Rollenvariablen

  • vars_files
    • Optionale Liste von Pfaden relativ zu /src auf dem Conductor mit zusätzlichen Variablen-YAML-Dateien
  • extra_pip_packages: [dockerspawner]
    • Liste von zusätzlichen pip-Paketen, die zusammen mit JupyterHub installiert werden sollen

Dateien & Verzeichnisse

  • jupyterhub_config_dir: /etc/jupyterhub/
    • Absoluter Pfad zum Verzeichnis, in dem die JupyterHub-Konfigurationsdatei abgelegt wird
  • jupyterhub_config_path: "{{ jupyterhub_config_dir }}/jupyterhub_config.py"
    • Absoluter Pfad zur JupyterHub-Konfigurationsdatei
  • jupyterhub_srv_dir: /srv/jupyterhub
  • jupyterhub_pip_version: 0.8.1
  • jupyter_config_dir: /etc/jupyter
    • Absoluter Pfad zum Verzeichnis, in dem die Jupyter-Notizbuch-Konfigurationsdatei abgelegt wird
  • jupyter_share_dir: /usr/local/share/jupyter
  • jupyter_templates_dir: "{{ jupyter_config_dir }}/templates"
  • ipython_config_dir: /etc/ipython

Spawner-Konfiguration

  • use_helm: nein
  • allow_sudo: nein
    • Erstelle Einzelbenutzernotizbücher mit Sudo-Rechten
    • WARNUNG: Die Verwendung dieser Option mit containerisierten Spawnern kann Sicherheitsrisiken mit sich bringen
  • mem_limit: ja
    • Standardmäßig keine Einschränkung. Setze auf ein gültiges Docker- oder Kubernetes mem_limit, z.B. 10G

Benutzerauthentifizierung

  • use_oauth: nein
    • Verwende GitHub OAuth zur Benutzerauthentifizierung
  • use_ldap: nein
    • Verwende ldapauthenticator zur Benutzerauthentifizierung
    • Siehe Dokumentation für Details zu den folgenden Einstellungen
  • ldap_domain
  • ldap_bind_dn_template
  • ldap_allowed_group
  • ldap_user_search_base
  • ldap_search_user
  • ldap_user_attribute
  • user_list: []
    • Whitelist von Benutzern, die erlaubt sind
  • admin_users: []
    • Liste von Benutzern, die Admin-Rechte erhalten sollen

Miniconda-Einstellungen

  • miniconda_version
    • Bestimme eine bestimmte Version von Miniconda zur Installation
  • conda_checksum
    • ERFORDERLICH, WENN miniconda_version ANDERS IST ALS STANDARD!
  • conda_installer: Miniconda3-{{miniconda_version}}-Linux-x86_64.sh
    • Benannter Name des Installationsskripts. Muss nur geändert werden, wenn auf einer nicht standardmäßigen Architektur gebaut wird.
  • conda_prefix: /opt/conda
    • Absoluter Pfad zum Verzeichnis, in das Miniconda installiert wird
  • conda_config
    • Bestimme beliebige Conda-Konfiguration, z.B. Standard-Conda-Kanäle zur Suche
    • Siehe vars/main.yml für ein Beispiel

Abhängigkeiten

Wenn der Standard dockerspawner verwendet wird, muss Docker auf dem Host installiert sein, z.B. über die Rolle mongrelion.docker

Lizenz

BSD

Autorinformationen

Erstellt von Marcus Levine für CKM Advisors.

Über das Projekt

Build a custom JupyterHub container

Installieren
ansible-galaxy install marcusianlevine.jupyterhub-container
GitHub Repository
Lizenz
bsd-3-clause
Downloads
95
Besitzer
Data Science + DevOps = DataEng