Docker容器卷不写入主机

嗨,我尝试在docker集装箱内生成一些资产,并把它放到主机。 所有在docker-machine环境中运行的都是使用virtualbox驱动程序初始化的。

例如我运行:

docker run -it -v $PWD/testfolder:/var/www:rw ubuntu /bin/bash 

接着

 root@b9e73827bc3c:/var/www touch dummy.txt 

从这一点上,我实际上必须在我的主机的$PWD/testfolder文件夹中看到dummy.txt ,但它没有文件夹testfolderdummy.txt (逻辑)。

在MacOSX上,相同的设置工作正确,并在主机端创build文件,但是当我尝试它的Ubuntu:14.04它停止工作。 这里都是容器inspect

  • MacOSX主机: https : //gist.github.com/zavalit/65e8a260866f834223616c1b59e4ce7d
  • Ubuntu:14.04主机: https ://gist.github.com/zavalit/40bd3ce8629ad81fcd6793ca63f99491

就我所知,它们都是完全相同的。

它试图使用docker-machine版本0.7.0-rc2和0.6.0,docker版本是1.10.3

有没有人经历过这样的事情? 我非常感谢任何可能的提示。 谢谢。

您将需要手动设置虚拟机以将文件夹与本地计算机绑定。 你可以按照这些指示: Docker + Ubuntu + Virtualbox:dockerfile中的“volumes”指令不起作用

但是,为什么你在Ubuntu下使用虚拟机? 你可以在Linux系统下使用docker而不用任何虚拟机。

如果你在linux上,你不能在docker机器里运行docker。 你可以使用apt https://docs.docker.com/engine/installation/linux/ubuntulinux/进行安装。

它不需要docker机器,使用它不是一个好主意。

你想要做的工作正常使用docker在Linux上(没有docker机)。

在发出docker-machine ssh之后,可能你正在运行docker run

在这种情况下,你的文件在虚拟机里面。

如果在主机上运行docker run会导致错误,或者不在虚拟机中运行引擎,则必须首先执行:

 . docker-machine env 

问候