深度学习工作站使用说明


#1

详细信息参见原项目的 README

项目地址: https://github.com/ufoym/deepo

使用 Deepo

Deepo GPU Version 默认包含 cuda 8.0/9.0,cudnn-v7,theano,tensorflow,sonnet,pytorch,keras,lasagne,mxnet,cntk,chainer,caffe,caffe2,torch

通过以下命令来进入环境,并在容器中挂载 ubuntu 用户目录:

nvidia-docker run -it -v /home/ubuntu:/root/ ufoym/deepo bash

-v 参数是 -volume 的缩写,以/本地路径:/容器内路径的形式,你可以在容器和本地直接共享数据,在容器中所作的修改也会映射到外部主机中。

使用 Jupyter

Step 1. pull the image with jupyter support

docker pull ufoym/deepo:all-py36-jupyter

all-py36-jupyter这个 tag 在 Deepo GPU Version 的基础上,加入了 Jupyter 支持。你也可以使用以下 tag:all-py36-jupyter, py36-jupyter, all-py27-jupyter, or py27-jupyter

Step 2. run the image

nvidia-docker run -it -v /home/ubuntu:/root --name Jupyter -p 8888:8888 --ipc=host ufoym/deepo:all-jupyter-py36 jupyter notebook --no-browser --ip=0.0.0.0 --allow-root --NotebookApp.token= --notebook-dir='/root'

以上命令启动 Jupyter Notebook,并映射到8888端口上,默认使用/root作为 notebook directory

一些基本操作

执行命令docker run xxxxxx 之后,会生成一个新的容器,然后进入container的内部:

root@af8bae53bdd3:/#

想退回外部主机环境的话:

执行exit或使用快捷键 Ctrl + d 保存当前状态并退出容器环境

如果有运行中的container,可以在container所在的外部操作系统中运行:

docker ps

查看到这个container。

如果想看到所有的container,包括运行中的,以及未运行的或者说是沉睡镜像,则运行:

docker ps -a

会输出所有镜像的信息,最后一列是NAME,你可以在这里找到你的容器的名称,如 goofy_almeida

这种随机生成的名称比较难记,你可以rename成一个好记的名字,比如:

docker rename goofy_almeida tensorflow_env

如果想再次打开这个container,运行:

docker start tensorflow_env

P.S: startstoprestart对应开启/停止/重启

这个时候container运行在后台,如果想进入它的终端,则:

docker attach tensorflow_env

就可以了。

不过,使用docker attach命令进入container(容器)有一个缺点,那就是每次从container中退出到前台时,container也跟着退出了(docker ps也查找不到,需要加-a)。

要想退出container时,让container仍然在后台运行着,可以使用docker exec -it命令。每次使用这个命令进入container,当退出container后,container仍然在后台运行,命令使用方法如下:

docker exec -it tensorflow_env /bin/bash

/bin/bash:在container中启动一个bash shell

这样输入exit退出container时,这个container仍然在后台运行,通过docker ps就可以查找到。

以上只是一些基本操作,Docker 的其他命令参考官网文档。


#2

c1041跑起来了
ssh ubuntu@10.50.7.31
Jupyter 跑在 8888 端口