通过Kubeflow部署JupyterHub失败:缺失configurable-http-proxy
解决Kubeflow部署JupyterHub时"configurable-http-proxy未找到"的问题
这个问题我之前部署JupyterHub时也碰到过,从日志里的报错信息就能明确原因:JupyterHub启动必须依赖configurable-http-proxy这个Node.js代理工具,但当前运行JupyterHub的容器里没安装它,导致启动失败。
错误核心提示
[E 2019-01-09 14:28:53.064 JupyterHub proxy:467] 无法找到代理['configurable-http-proxy'],可通过npm install -g configurable-http-proxy安装
FileNotFoundError: [Errno 2] No such file or directory: 'configurable-http-proxy': 'configurable-http-proxy'
下面给你三种可行的解决方法,按需选择:
方法一:临时快速修复(适合测试场景)
如果只是想先让服务跑起来,可直接进入已启动的Pod手动安装依赖:
- 找到JupyterHub的Hub Pod:
找到名称类似kubectl get pods -n kubeflowjupyter-hub-xxxxxx-xxxxx的Pod。 - 进入Pod的容器:
kubectl exec -it <你的hub-pod名称> -n kubeflow bash - 安装Node.js和代理工具(假设容器是Debian/Ubuntu基础镜像):
apt-get update && apt-get install -y nodejs npm npm install -g configurable-http-proxy - 退出容器后重启Pod,让JupyterHub重新加载:
kubectl delete pod <你的hub-pod名称> -n kubeflow
方法二:自定义镜像(持久化解决方案)
临时修复在Pod重启后会失效,自定义镜像能彻底解决这个问题:
- 创建一个
Dockerfile,基于官方JupyterHub镜像添加依赖:FROM jupyterhub/jupyterhub:latest # 安装Node.js和configurable-http-proxy RUN apt-get update && apt-get install -y nodejs npm && \ npm install -g configurable-http-proxy && \ # 清理缓存减少镜像体积 apt-get clean && rm -rf /var/lib/apt/lists/* - 构建并推送镜像到你的镜像仓库(比如Docker Hub或私有仓库):
docker build -t your-registry/my-jupyterhub:v1 . docker push your-registry/my-jupyterhub:v1 - 修改Ksonnet配置,替换JupyterHub的镜像:
# 进入你的Kubeflow项目目录 cd your-kubeflow-project-dir # 设置hub镜像参数 ks param set jupyter hub_image your-registry/my-jupyterhub:v1 # 重新部署 ks apply default -c jupyter
方法三:修改Ksonnet启动命令(无需自定义镜像)
通过修改JupyterHub的启动命令,让容器在启动JupyterHub前自动安装依赖:
- 通过ks param设置Hub的启动命令:
ks param set jupyter hub_command "bash -c 'apt-get update && apt-get install -y nodejs npm && npm install -g configurable-http-proxy && jupyterhub --config /etc/jupyterhub/jupyterhub_config.py'" - 重新部署:
ks apply default -c jupyter
额外提示
部署完成后,记得按照日志提示添加管理员用户,否则无法访问管理界面:
你可以通过修改JupyterHub的配置参数添加管理员账号:
ks param set jupyter admin_users '["你的用户名"]' ks apply default -c jupyter
内容的提问来源于stack exchange,提问作者Chubby Hsia
相关产品推荐
相关产品推荐

