如何通过Windows 10 Home上的virtualbox从docker容器访问主机OS文件

时间:2018-02-24 03:08:10

标签: docker windows-10 docker-volume docker-toolbox mount-point

我在Windows 10家用机器上安装了Docker Toolbox。当我点击快速启动图标时,我得到一个bash shell,我可以运行像

这样的命令
> docker run -it ruby /bin/bash

这让我进入了docker Ruby容器的bash shell。该容器在Docker Toolbox创建的VirtualBox VM上运行。 VM具有共享文件夹设置:

Folder Path:  \\?\C:\Users
Folder Name:  c/Users

read-only:  unchecked
auto mount:  checked
make permanent: checked

我希望能够通过容器(运行Debian Jessie)中名为/ code的目录从我的Docker容器访问Windows 10主机上的C:\ Users \文件夹。

如何配置我的VM或Docker容器以便能够从我的docker容器访问该文件夹?

1 个答案:

答案 0 :(得分:1)

关键是要弄清楚如何表达遍历Windows-VirtualBox边界的共享卷和VirtualBox-Docker边界。

由于VirtualBox VM和Windows 10家庭之间的共享文件夹是C:\ Users,因此装载必须位于该文件夹树下的某个位置。

  1. 我在Windows中创建了一个名为C:\ Users \ Jay \ MyApp的文件夹。这将在VirtualBox VM中可见。
  2. 然后我决定在Docker容器中调用文件夹c / MyApp。
  3. 另一个关键点是卷装必须以“//”开头。所以完整的docker命令是:

    export ...

    我可以使用一个漂亮的文本编辑器在Windows中编辑名为C:\ Users \ Jay \ MyApp \ test.rb的文件,然后在我的Ruby Linux容器中运行它

    export default ...

    test.rb的输出显示在Docker容器的控制台上。