jupyterhub/jupyterhub
Multi-user server for Jupyter notebooks
解决的问题
JupyterHub 是一个多用户服务器,允许多个用户拥有各自独立的 Jupyter notebook 服务器。它解决了为学生群体、企业数据科学团队或研究项目提供集中管理环境的问题,使每个用户无需手动设置自己的服务器即可访问交互式计算环境。
工作原理
JupyterHub 由三个主要组件组成:
- The Hub:一个中央 Tornado 进程,负责处理身份验证并按需启动单用户服务器。
- The Proxy:一个可配置的 HTTP 代理 (node-http-proxy),将请求转发到 Hub 或相应的单用户服务器。
- Single-user Servers:每个用户独立的 Python/Jupyter/Tornado 实例的 Jupyter notebook 服务器。
当用户登录时,Hub 会配置代理,将流量路由到该用户特定的笔记本服务器。
适用对象
专为需要在共享基础设施上为大量用户提供交互式计算环境的组织、教育工作者和研究小组设计。
亮点
- 灵活的身份验证:支持包括 PAM、OAuth、LDAP 和 Kerberos 在内的各种身份验证器。
- 可扩展的启动:可以通过 Docker、Kubernetes、systemd 和 Hadoop 集群 (YARN) 等 spawner 在各种环境中启动服务器。
- 管理控制:提供用于管理 Hub 及其用户的 REST API。
- Docker 支持:提供基础 Docker 镜像以实现简化部署。
相关
- 项目
- 项目
- 项目
- 项目
- Dispatch