【问题标题】:How can I make Docker container shared files with host appeared in the container?如何使 Docker 容器与主机共享文件出现在容器中?
【发布时间】:2019-01-22 13:02:48
【问题描述】:

我正在尝试创建一个容器来运行程序。我正在使用预配置的映像,现在我需要运行该程序。但是,它是一个机器学习程序,我需要从我的计算机上运行一个数据集。

文件太大,无法复制到容器中。如果容器中运行的程序在我的计算机本地目录中搜索数据集,那将是最好的,但我不知道我该怎么做。

好吧,我已经在容器中使用docker run -it -v ~/Volumes/Data/Studies/PhD\Work/gitlab/J2/ydk-py:/ydk-py ydkdev/ydk-py 显示了我机器上的共享文件夹,但文件夹ydk-py 中的所有文件都没有显示。这是安全的、通常需要的行为。但是对于开发和实例设置,访问现有文件结构将非常有用。

【问题讨论】:

    标签: python docker docker-machine boot2docker


    【解决方案1】:

    docker run 加上 -v 会自动挂载子目录。在您的情况下,您使用的是相对路径,您需要根据 this 文档使用绝对路径。 所以从

    改变你的命令

    docker run -it -v ~/Volumes/Data/Studies/PhD\Work/gitlab/J2/ydk-py:/ydk-py ydkdev/ydk-py

    到

    docker run -it -v /home/<what ever user>/Volumes/Data/Studies/PhD\Work/gitlab/J2/ydk-py:/ydk-py ydkdev/ydk-py

    它会起作用的。 确保您对尝试挂载的目录拥有足够的权限。

    【讨论】:

    • 成功了,谢谢@kishorebjv。还有一件事。您的答案中给出的路径对于 MacOS 用户不正确。正确的是docker run -it -v /Volumes/Data/Studies/PhD\Work/gitlab/J2/ydk-py:/ydk-py ydkdev/ydk-py。不过谢谢:)
    • 太棒了,我仍然对 Windows 感到震惊 :)
    猜你喜欢
    • 1970-01-01
    • 2016-11-26
    • 2018-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多