跳转到主要内容

JupyterHub Apps

项目描述

JupyterHub Apps启动器

Lint Test

JupyterHub Apps启动器是一个通用的服务器启动器。该项目旨在支持通过用户提供的命令启动任何内容,例如Flask服务器、FastAPI服务器或Panel仪表板。目前,以下框架受到支持

  • Panel
  • Bokeh
  • Streamlit
  • Plotly Dash
  • Voila
  • Gradio
  • JupyterLab
  • 通用Python命令

JHub Apps Demo

安装

pip install jhub-apps

或通过conda

conda install -c conda-forge jhub-apps

开发安装

安装依赖项

conda env create -f environment-dev.yml
conda activate jhub-apps-dev
pip install -e .

启动JupyterHub

设置以下环境变量

export JHUB_APP_JWT_SECRET_KEY=$(openssl rand -hex 32)

启动JupyterHub

jupyterhub -f jupyterhub_config.py

现在转到http://127.0.0.1:8000/hub/home以访问JHub Apps启动器

API端点

Hub服务通过FastAPI端点公开。相关文档可在以下位置访问:http://127.0.0.1:10202/services/japps/docs

要尝试认证端点,请点击上述url右上角的授权按钮,选择OAuth2AuthorizationCodeBearer并点击授权。

本地开发

注意:为了本地开发,JupyterHub后端和React UI前端都应该运行。

  1. 要启动JupyterHub后端,请在终端中运行以下命令
jupyterhub -f jupyterhub_config.py
  1. 要启动React UI前端,请在ui目录中打开一个单独的终端并运行以下命令
npm run watch

运行测试

单元测试

pytest jhub_apps/tests

端到端测试

pytest jhub_apps/tests_e2e -vvv -s --headed

用法

JHub Apps已使用SimpleLocalProcessSpawner与本地JupyterHub以及使用SystemdSpawner的The Littlest JupyterHub进行测试。

  • 安装JHub Apps
pip install git+https://github.com/nebari-dev/jhub-apps.git
  • 在The Littlest JupyterHub的jupyterhub_config.py中添加以下内容
from tljh.user_creating_spawner import UserCreatingSpawner
from jhub_apps.configuration import install_jhub_apps

c.JupyterHub.bind_url = "<YOUR_JUPYTERHUB_URL>"
c.SystemdSpawner.unit_name_template = 'jupyter-{USERNAME}{JHUBSERVERNAME}'
c.JAppsConfig.apps_auth_type = "oauth" # or none (if you don't want authentication on apps)
c.JAppsConfig.python_exec = "python3"
# Pass in the path to jupyterhub config
c.JAppsConfig.jupyterhub_config_path = "jupyterhub_config.py"
# Either a static list of conda environments to show in the
# create panel apps form or a callable to fetch conda enviornments
# dynamically, e.g. from conda-store API
c.JAppsConfig.conda_envs = []
c = install_jhub_apps(c, UserCreatingSpawner)

项目详情


下载文件

下载您平台对应的文件。如果您不确定该选择哪个,请了解更多关于 安装包 的信息。

源分布

jhub_apps-2024.8.1.tar.gz (15.2 MB 查看哈希值)

上传时间

构建分布

jhub_apps-2024.8.1-py3-none-any.whl (3.8 MB 查看哈希值)

上传时间 Python 3

由以下组织支持: