Docker删除所有容器(Container):
$ docker rm $(docker ps -a -q)
Docker删除所有<none>:<none>镜像(Images)
$ docker rmi $(docker images -q -f dangling=true)
Docker杀死所有正在运行的容器(Container)
$ docker kill $(docker ps -a -q)
Usage: docker images [OPTIONS] [NAME]
List images
-a, --all=false Show all images (by default filter out the intermediate image layers)
-f, --filter=[] Provide filter values (i.e. 'dangling=true')
--no-trunc=false Don't truncate output
-q, --quiet=false Only show numeric IDs
安装sshd的过程比较简单,我通常安装openssh-server
sudo apt-get install openssh-server
然后编辑它的配置文件/etc/ssh/sshd_config
,注释掉配置文件中的"PermitRootLogin without-password
",再增加一句"PermitRootLogin yes
"使得root用户可以远程登录。然后用将这个安装好sshd的容器做成镜像。
之后基于新镜像启动容器,用端口映射的方式,映射ssh端口到host,之后通过ssh指定端口的方式登录到docker 容器。jupyter-notebook的默认端口号是8888,也可以提前考虑,在这里多映射几个外部端口。
docker run -d -p 30001:22 --name jupyter-notebook ubuntu:14.04-sshd /usr/sbin/sshd -D
安装jupyter
这个过程基本和在ubuntu系统上安装jupyter的过程是一样的,但容器中的ubuntu是个最简环境,没有安装python-dev包。
更新apt-get环境
apt-get update
安装python dev包
apt-get install python-dev
安装jupyter
pip install jupyter
安装过程需要注意的是,由于墙的原因,ubuntu的源和pip的源都换成国内的源,我ubuntu用的是网易的源,pip用的是清华的源。
使用jupyter
jupyter 默认只能通过本地地址访问,要放开配置,允许jupyter远程访问。在放开远程访问时,需要设置密码,jupyter的配置文件只支持加密后的密文密码(赞一个)
生成jupyter配置文件
这个会生成配置文件.jupyter/jupyter_notebook_config.py
jupyter notebook --generate-config
使用ipython生成密码
In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:38a5ecdf288b:c82dace8d3c7a212ec0bd49bbb99c9af3bae076e'
去配置文件.jupyter/jupyter_notebook_config.py中修改以下参数
c.NotebookApp.ip='*' #绑定所有地址
c.NotebookApp.password = u'刚才生成的密码'
c.NotebookApp.open_browser = False #启动后是否在浏览器中自动打开
c.NotebookApp.port =8888 #指定一个访问端口,默认8888,注意和映射的docker端口对应
配置完成以后,就可以用 jupyter notebook命令把jupyter启动起来了,然后你就可以看到一个超级简洁的jupyter登录界面了。输入密码就可以开始使用jupyter了。