利用Docker环境配置jupyter notebook服务器

利用Docker环境配置jupyter notebook服务器

Eswai: http://blog.csdn.net/eswai

我们有一台高性能工作站,配置好了TensorFlow所需环境的容器。现在我希望局域网的其他计算机都能使用这个环境,但是SSH远程登录还是不够便捷。因此想到可以配置jupyter notebook服务器,其他计算机可以用浏览器来登录。

1 配置docker镜像

假设此步骤已经搞定

2 开启容器

> NV_GPU=0 nvidia-docker run -it --name notebook-server -p 7777:8888 -v /home/eswai:/eswai eswai/tf140py2:1.0  /bin/bash

其中,
- NV_GPU=0 nvidia-docker
- NV_GPU=0 选择第0个GPU设备
- 用nvidia-docker才能启用GPU
- 如果不用GPU,直接用docker命令就行
- -it
- -i 以交互模式运行容器,通常与 -t 同时使用
- -t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
- –name 后面跟容器的名称notebook-server是我自定义的名字,可以随便改;
- -p 端口映射,如xxxx:yyyy将主机的xxxx端口映射到容器内的yyyy端口,jupyter notebook默认使用8888端口,7777是我自定义的,不冲突就好;
- -v 路径映射 /a : /b将主机的/a路径映射到容器的/b,根据自己的需要手动修改
- eswai/tf140py2:1.0是我使用的镜像名称和版本号,根据具体需要修改
- /bin/bash 启动镜像后执行的命令

3 配置jupyter notebook

3.0 此时已经进入容器内终端,如果容器已关,请先start再attach
3.1 创建存放jupyter notebook的文件夹
> cd [映射目标]
> cd /eswai
> mkdir [存放notebook的文件夹]
> mkdir jupyter

此时相当于在主机的/home/eswai下创建了jupyter文件夹

3.2 如果容器内没有jupyter notebook,需要安装一下
> pip install jupyter notebook
3.3 配置jupyter notebook
> jupyter notebook --generate-config
> vim ~/.jupyter/jupyter-notebook-config.py

修改如下内容

# 允许root启动
c.NotebookApp.allow_root = True
# 允许远程访问
c.NotebookApp.ip = '*'
# 设置notebook文件夹
c.NotebookApp.notebook_dir = '/eswai/jupyter'
# 设置静态token,这样就不用每次换token了,另一种方法是设置密码password
c.NotebookApp.token = '[自定义token]'
3.4 开启notebook

在主机终端下

> docker exec notebook-server jupyter notebook &

或在容器内终端下

> jupyter notebook &
按Ctrl+P+Q退出容器但不关闭

4 测试使用

打开链接: http://[主机IP]:[配置映射的主机端口]/tree?token=[自定义的token]

形如:http://172.16.1.1:7777/tree?token=9Llv9cCqyNv1Vf7g

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值