一旦会话启动,我应该如何从Docker启动ipython笔记本?

时间:2017-01-17 22:11:19

标签: docker jupyter

我必须使用docker镜像运行ipython notebook。我在Windows 10上。我已经安装了Docker Toolbox并提取了一个docker镜像 - 一切都很顺利。我根据找到的there指令设置了一个bashrc文件。

为方便起见,这是bashrc函数: kjupyter(){   (睡3&& open" http:// $(docker-machine ip docker2):8888")&   docker run -v $ PWD:/ tmp / working -w = / tmp / working -p 8888:8888 --rm -it kaggle / python jupyter notebook --ip =" 127.0.0.1" --no-browser --notebook-dir = / tmp / working }

现在,当我打开Docker终端并键入kjupyter时,仪表板无法启动 - 理解bc of" - no-browser"所以我需要手动启动它。提示窗口显示' Jupyter笔记本电脑正在运行:http://0.0.0.0:888/'。但是当我在我的浏览器(Chrome)中键入它时,它告诉我它无法访问。那么如何才能访问通常的jupter仪表板? 感谢。

2 个答案:

答案 0 :(得分:1)

对我来说,使用bashrc的东西不起作用。 我研究了如何在Windows上为cmd行创建别名(这基本上是bashrc所做的事情),但是选项是有限的。 所以我只是按原样输入命令。

 (sleep 3 && open "http://$(docker-machine ip docker2):8888")&
 docker run -v $PWD:/tmp/working -w=/tmp/working -p 8888:8888 --rm -it kaggle/python jupyter notebook --ip="127.0.0.1" --no-browser --notebook-dir=/tmp/working

我意识到第一部分只是用jupyter的URL打开浏览器。 所以我剪了那部分。经过进一步的搜索,我最终得到:

docker run -v "%cd%":/tmp/working -w=/tmp/working -p 8888:8888 --rm -it kaggle/python jupyter notebook --no-browser --ip=0.0.0.0 --port=8888 --notebook-dir=/tmp/working --allow-root

$PWD替换为"%cd%",并添加了--ip=0.0.0.0 --port=8888 这样可以使您的jupyter在http://localhost:8888下运行 它将要求您提供令牌,只需从命令行输出的网址中获取第一个令牌(获取整个网址对我来说并不奇怪)

答案 1 :(得分:-1)

你要改变'ip'字段;在我的情况下(ubuntu 15.04),我只是键入了
 '*'