【问题标题】:How should I launch ipython notebook from Docker once a session has been launched?启动会话后,我应该如何从 Docker 启动 ipython notebook?
【发布时间】:2017-01-17 22:11:18
【问题描述】:

我必须使用 docker 映像运行 ipython notebook。我在 Windows 10 上。我已经安装了 Docker Toolbox 并提取了一个 docker 映像——一切都很好。我已经根据there 找到的说明设置了一个 bashrc 文件。

为方便起见,这里是 bashrc 函数: kjupyter() { (睡眠 3 && 打开 "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/工作 }

现在,当我打开 Docker 终端并键入 kjupyter 时,仪表板不会启动 - 对“--no-browser”有意义,所以我需要手动启动它。提示窗口显示“Jupyter Notebook 正在运行:http://0.0.0.0:888/”。但是当我在浏览器(Chrome)中输入它时,它告诉我它无法访问。那么我怎样才能访问通常的 jupter 仪表板呢? 谢谢。

【问题讨论】:

    标签: docker jupyter


    【解决方案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 下启动并运行 它会要求您提供令牌,只需从命令行输出的 url 中获取第一个令牌(奇怪的是,获取整个 url 对我不起作用)

    【讨论】:

      【解决方案2】:

      您必须更改“ip”字段;就我而言(ubuntu 15.04),我只是输入
      '*'

      【讨论】:

      • 这是评论/不是答案
      猜你喜欢
      • 1970-01-01
      • 2015-01-28
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 2020-10-17
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      相关资源
      最近更新 更多