【问题标题】:Show volume files in the GUI of Docker Jupyter notebook在 Docker Jupyter notebook 的 GUI 中显示卷文件
【发布时间】:2018-06-14 21:47:16
【问题描述】:

我使用 Docker 运行 Jupyter Notebook 并尝试将本地目录挂载到预期的 Docker 卷上。但我无法在 Jupyter 笔记本中看到我的文件。 Docker 命令是

sudo nvidia-docker create -v ~/tf/src -it -p 8888:8888 
   -e PASSWORD=password 
   --name container_name gcr.io/tensorflow/tensorflow:latest-gpu

Jupyter Notebook 的 GUI 看起来像

~/tf/src 未显示在 Jupyter GUI 中。

需要什么文件才能在 Jupyter 中显示?我是否为此错误地初始化了容器?

【问题讨论】:

  • -v /path-in-host- contains-your-notebooks:/tf

标签: docker jupyter-notebook


【解决方案1】:

你安装卷的方式我认为它不正确-v ~/tf/src应该是

-v /host/directory:/container/directory

【讨论】:

  • 少了一件,sudo nvidia-docker create -v /Users/user/tf/src:/notebooks -it -p 8888:8888 -e PASSWORD=password --name container_name gcr。 io/tensorflow/tensorflow:latest-gpu "/notebooks" 是 jupyter 放置文件的目录
  • 在最新版本中,我看到的是/tf 中的笔记本,而不是/notebooks 所以...docker run --runtime=nvidia -it --name tensorflow -p 8888:8888 -v ~/<localdir>:/tf/<dockerdir> tensorflow/tensorflow:nightly-jupyter 带有适当的<localdir><dockerdir>
【解决方案2】:

Ferdi D 的答案只针对解释器内的文件,而不是 Jupyter GUI 内的精确文件,这让事情有点混乱。我通过更一般地显示 Jupyter 笔记本中的文件来定位标题 Show volume files in docker jupyter notebook


解释器中的文件

-v 标志为您提供解释器或笔记本中的文件,但不一定在 Jupyter GUI 中

你为之运行

$ docker run --rm -it -p 6780:8888 -v "$PWD":/home/jovyan/ jupyter/r-notebook

因为挂载点依赖于发行版,因此也依赖于它的路径。在这里,您要求将当前目录挂载到 Jupyter 的路径 /home/jovyan

Jupyter GUI 中的文件

在 Jupyter GUI 中获取文件:

OS X

如果您在当前 Jupyter 版本中拥有 /home/jovyan 以外的其他文件,则这些文件不会出现在 Jupyter GUI 中,因此请使用

$ docker run --rm -it -p 6780:8888 -v "$PWD":/home/jovyan/ jupyter/r-notebook

其他一些发行版

$ docker run --rm -it -p 6780:8888 -v "$PWD":/tmp jupyter/r-notebook

更一般地

要检查/home/jovyan//tmp,您可以在R 中getwd() 查看您的工作目录。

更多话题

  1. Reddit 更广泛地讨论主题here

【讨论】:

    【解决方案3】:

    Karl L 认为解决方案如下。解决方案移到这里供大家判断,让问题更容易阅读。


    解决方案

    sudo nvidia-docker create -v /Users/user/tf/src:/notebooks 
       -it -p 8888:8888 -e PASSWORD=password 
       --name container_name gcr.io/tensorflow/tensorflow:latest-gpu
    

    正如@fendi-d 指出的那样,我的音量安装不正确。

    然后我被指向了错误的安装目录,我在 tensorflow docker 文件中找到了正确的安装目录 https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/dockerfiles/dockerfiles/gpu.Dockerfile

    其中配置了jupyter notebook,然后将文件复制到“/notebooks”

    # Set up our notebook config.
    COPY jupyter_notebook_config.py /root/.jupyter/
    
    # Copy sample notebooks.
    COPY notebooks /notebooks
    

    在我使用正确的安装路径运行后,它显示我的文件位于“/Users/user/tf/src”

    【讨论】:

      【解决方案4】:

      发布这个作为答案,因为位置似乎已经改变,并且接受的答案没有完整地说明如何让您的本地目录显示在 Tensorflow Jupyter 中(在一行中输入适当的 @987654321 @和<dockerdir>):

       docker run --runtime=nvidia -it 
                  --name tensorflow 
                  -p 8888:8888 
                  -v ~/<localdir>:/tf/<dockerdir> 
                  tensorflow/tensorflow:nightly-jupyter 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-04
        • 1970-01-01
        • 2019-01-28
        • 1970-01-01
        • 1970-01-01
        • 2021-04-10
        • 1970-01-01
        相关资源
        最近更新 更多