Docker + Ubuntu + Virtualbox:dockerfile中的“volumes”指令不起作用

时间:2016-01-26 02:11:36

标签: ubuntu docker virtualbox docker-compose docker-machine

Docker + Ubuntu + Virtualbox:dockerfile中的“volumes”指令不起作用?请参阅下面的解决方案。

1 个答案:

答案 0 :(得分:9)

在这里测试Docker并且已经存在问题:dockerfile中的"volumes" directive似乎无法在Ubuntu中运行 - 在Mac和Windows中都可以。 的所有进程都正常,环境有问题,但文件系统没有共享文件夹。

在尝试了许多事情和大量研究我的朋友之后,我们在GitHub中发现了这个问题:" Add support to mount Linux host homedir"。

基本上,问题是Docker在容器中装载主机主目录时失败了。他们计划在未来版本中包含修复程序,但同时,如果您现在需要使用,那么您需要做的就是。

打开Virtualbox界面,右键单击您的计算机,设置>共享文件夹。您可以删除任何已填充的内容并添加新内容。在路径中,选择您的/home和名称Users(可以是任何名称,但这个名称与Mac和Windows名称一致)。检查自动安装和持久性,然后按"确定"。

Virtualbox config sample

之后,您使用docker-machine ssh [name]进入您的计算机,并且必须从docker中的共享主文件夹(已映射的主机)创建一个来自/home来宾的符号链接:

ln -s "/Users/[username]/${d}" "/home/${d}"

从这里开始,映射必须正常,你还好! \ O /

PS to frontenders :如果您打算在项目中使用LiveReload,则需要在终端中运行vboxmanage controlvm default natpf1 "35729,tcp,127.0.0.1,35729,,35729"(不在docker机器内,在主机中) - - 只为所有项目一次。