kubeflow-6-jupyter notebook的使用

在kubeflow中使用notebook servers功能本质是起一个jupyter lab容器,在容器中运行一个jupyter的服务。
notebook服务名称,默认是不能重复的。notebook服务镜像可以选择已有的镜像,也可以使用包含自己需要python环境的个性化镜像。

工作空间在容器中的默认挂载地址为/home/jovyan,但实际上它的文件都是存放在local-path-provisioner定义目录下各自的pv中。默认情况下,工作空间的内容会永久保存。你可以个人使用一个工作空间也可以与别人共享。

10.23.241.142   myuse2
10.23.241.97    myuse1

1 构建自定义kubeflow notebook镜像

构建notebook镜像的基本要求,是在镜像的python环境中安装jupyter和notebook 的工具包。

1.1 Dockerfile

FROM python:3.6
MAINTAINER bingbing <[email protected]>
RUN pip3 install pip -U
RUN pip3 config set global.index-url http://mirrors.aliyun.com/pypi/simple
RUN pip3 config set install.trusted-host mirrors.aliyun.com
RUN pip3 install notebook
RUN pip3 install jupyter
RUN mkdir /home/jovyan
ENV NB_PREFIX /
CMD ["sh","-c", "jupyter notebook --notebook-dir=/home/jovyan --ip=0.0.0.0 --no-browser --allow-root --port=8888 --NotebookApp.token='' --NotebookApp.password='' --NotebookApp.allow_origin='*' --NotebookApp.base_url=${NB_PREFIX}"]

参数含义:

--notebook-dir=/home/jovyan 指明了notebook服务的工作路径
--ip=0.0.0.0 jupyter服务监听所有ip
--allow-root 允许使用root权限运行notebook
设置notebook服务端口 --port=8888
不需要用户认证,免密登入 --NotebookApp.token='' --NotebookApp.password='' --NotebookApp.allow_origin='*'

1.2 建立镜像my-notebook-py3:v1.0

# mkdir /root/mytestnotebook
# cp Dockerfile /root/mytestnotebook
# docker pull python:3.6
# docker build -t my-notebook-py3:v1.0 .

1.3 测试运行镜像

#docker run -id --name=c_mynotebook -p 8888:8888 my-notebook-py3:v1.0
#docker exec -it c_mynotebook /bin/bash进入容器
#docker stop c_mynotebook停止容器
#docker container prune#批量删除已停止的容器

http://10.23.241.97:8888
kubeflow-6-jupyter notebook的使用_第1张图片通过upload上传文件rulesRunning.log,进入容器,发现其位于/home/jovyan目录下。

在这里插入图片描述

1.4 增量制作镜像

在不考虑镜像文件大小的前提下,容器存镜像是对用户比较友好的方式。
步骤如下:

docker ps找到当前容器的id
docker commit container-id image:tag将当前容器存为指定名字可标签的镜像

1.5 kubeflow使用镜像my-notebook-py3:v1.0

(1)登录kubeflow的dashboard
http://10.23.241.97:31380登录kubeflow的dashboard。
默认用户名和密码
(2)镜像发布到多个节点
#docker save -o my-notebook-py3-v1.0.tar my-notebook-py3:v1.0
将镜像传到另一个节点
#docker load -i my-notebook-py3-v1.0.tar
(3)启动notebook server

kubeflow-6-jupyter notebook的使用_第2张图片

(4)创建成功以后
kubeflow-6-jupyter notebook的使用_第3张图片

(5)点击连接
kubeflow-6-jupyter notebook的使用_第4张图片

你可能感兴趣的:(kubeflow)