marcusianlevine.jupyterhub-container

jupyterhub-container

Agrega un servicio de Jupyter Hub a tu proyecto de Ansible Container. Ejecuta los siguientes comandos para instalar el servicio:

# Establece el directorio de trabajo en la raíz de tu proyecto de Ansible Container
$ cd myproject

# Instala el servicio
$ ansible-container install marcusianlevine.jupyterhub-container

Requisitos

  • Ansible Container
  • Un proyecto de Ansible Container existente. Para crear un proyecto, simplemente ejecuta lo siguiente:
    # Crea un directorio de proyecto vacío
    $ mkdir myproject
    
    # Establece el directorio de trabajo en el nuevo directorio
    $ cd myproject
    
    # Inicializa el proyecto
    $ ansible-container init
    

Variables de Rol

  • vars_files
    • Lista opcional de rutas relativas a /src en el Conductor con archivos YAML de variables extra
  • extra_pip_packages: [dockerspawner]
    • Lista de paquetes pip adicionales para instalar junto a JupyterHub

Archivos y Directorios

  • jupyterhub_config_dir: /etc/jupyterhub/
    • Ruta absoluta al directorio donde se colocará el archivo de configuración de JupyterHub
  • jupyterhub_config_path: "{{ jupyterhub_config_dir }}/jupyterhub_config.py"
    • Ruta absoluta del archivo de configuración de JupyterHub
  • jupyterhub_srv_dir: /srv/jupyterhub
  • jupyterhub_pip_version: 0.8.1
  • jupyter_config_dir: /etc/jupyter
    • Ruta absoluta al directorio donde se colocará el archivo de configuración de Jupyter Notebook
  • jupyter_share_dir: /usr/local/share/jupyter
  • jupyter_templates_dir: "{{ jupyter_config_dir }}/templates"
  • ipython_config_dir: /etc/ipython

Configuración del Spawner

  • use_helm: no
  • allow_sudo: no
    • Genera notebooks de usuario individual con permisos sudo
    • ADVERTENCIA: usar esta opción con Spawners en contenedores introduce riesgos de seguridad
  • mem_limit: yes
    • Sin límite por defecto. Configúralo a un mem_limit válido de Docker o Kubernetes, por ejemplo, 10G

Autenticación de Usuario

  • use_oauth: no
    • Usa GitHub OAuth para la autenticación de usuarios
  • use_ldap: no
    • Usa ldapauthenticator para la autenticación de usuarios
    • Consulta la documentación para más detalles sobre las siguientes configuraciones
  • ldap_domain
  • ldap_bind_dn_template
  • ldap_allowed_group
  • ldap_user_search_base
  • ldap_search_user
  • ldap_user_attribute
  • user_list: []
    • Lista blanca de usuarios permitidos
  • admin_users: []
    • Lista de usuarios que tendrán privilegios de administrador

Configuración de Miniconda

  • miniconda_version
    • Especifica una versión particular de Miniconda para instalar
  • conda_checksum
    • ¡REQUERIDO SI miniconda_version DIFERENTE DEL VALOR POR DEFECTO!
  • conda_installer: Miniconda3-{{miniconda_version}}-Linux-x86_64.sh
    • Nombre del script de instalación. Solo debe cambiarse si se construye en una arquitectura no estándar.
  • conda_prefix: /opt/conda
    • Ruta absoluta al directorio en el que se instalará Miniconda
  • conda_config
    • Especifica la configuración de conda arbitraria, por ejemplo, los canales de conda predeterminados a buscar
    • Consulta vars/main.yml para un ejemplo

Dependencias

Si se apunta al dockerspawner por defecto, el host debe tener Docker instalado, por ejemplo, a través del rol mongrelion.docker

Licencia

BSD

Información del Autor

Creado por Marcus Levine para CKM Advisors.

Acerca del proyecto

Build a custom JupyterHub container

Instalar
ansible-galaxy install marcusianlevine.jupyterhub-container
Licencia
bsd-3-clause
Descargas
95
Propietario
Data Science + DevOps = DataEng