参考资料

  1. PostgreSQL 是一个开源的关系型数据库管理系统
  2. Haxe 是一种开源的跨平台编程语言
  3. OnlyOffice是一款开源办公套件
  4. OwnCloud/Server 是一个开源自托管文件同步和共享平台
  5. Swift是苹果公司开发的一种强大且直观的编程语言
  6. Eclipse Mosquitto 是一个开源(EPL/EDL 许可证)的 MQTT 消息代理(broker)
  7. Elixir 是一种基于 Erlang 虚拟机的函数式编程语言
  8. 如何用Docker进行应用部署?

JupyterHub 简介

JupyterHub 是一个多用户版本的 Jupyter Notebook,允许团队或教育机构通过网页浏览器访问共享的计算资源。它支持多个用户同时使用,每个用户拥有独立的 Jupyter 环境。

特点

  1. 多用户支持:允许多个用户同时登录并使用独立的 Jupyter 环境。

  2. 可扩展性:支持 Kubernetes 等集群管理工具,适合大规模部署。

  3. 认证集成:支持 OAuth、LDAP、PAM 等多种认证方式。

  4. 灵活的后端:支持 Docker、Kubernetes、批处理系统等多种后端。

  5. 自定义配置:可以通过配置文件调整资源分配、用户权限等。

最新更新内容及时间

  • 最新版本:3.0.0(截至 2023 年 10 月)

  • 主要更新

    • 支持 JupyterLab 4.0。

    • 改进了 Kubernetes 支持。

    • 增强了安全性配置。

镜像下载地址

官网地址

文档地址

Docker 安装示例

# 拉取镜像
docker pull jupyterhub/jupyterhub

# 运行 JupyterHub
docker run -p 8000:8000 -v /var/run/docker.sock:/var/run/docker.sock jupyterhub/jupyterhub

.yaml 设置教程

  1. 创建配置文件 jupyterhub_config.py(不是 .yaml,JupyterHub 使用 Python 文件配置)。

  2. 示例配置:

c.JupyterHub.ip = '0.0.0.0'
c.JupyterHub.port = 8000
c.JupyterHub.spawner_class = 'dockerspawner.DockerSpawner'
c.DockerSpawner.image = 'jupyter/base-notebook'

常用错误问题

  1. 端口冲突:确保 8000 端口未被占用。

  2. Docker 权限问题:确保 Docker 服务已启动且用户有权限。

  3. 认证失败:检查认证配置(如 PAM 或 OAuth)。

  4. 资源不足:调整 c.Spawner.mem_limitc.Spawner.cpu_limit

  5. 镜像拉取失败:检查网络或镜像名称是否正确。