Virtualbox 从主机与boot2docker共享代码目录不会在guest上调用inotify

Virtualbox 从主机与boot2docker共享代码目录不会在guest上调用inotify,virtualbox,inotify,boot2docker,Virtualbox,Inotify,Boot2docker,我正在尝试使用boot2docker/Virtualbox设置开发环境。在主机上与docker容器共享文件夹是可行的,但由于它是通过Virtualbox共享文件夹inotify共享的,因此不会在容器内触发(并且不会重新加载代码) 有没有办法将源文件夹放入一个docker映像中,该映像中的boot2docker仍然会触发容器中的inotify?我宁愿不使用轮询,因为在Virtualbox共享中使用轮询会给主机带来沉重的CPU成本。这是boot2docker的限制,因为这种双层间接寻址,您必须使用V

我正在尝试使用boot2docker/Virtualbox设置开发环境。在主机上与docker容器共享文件夹是可行的,但由于它是通过Virtualbox共享文件夹inotify共享的,因此不会在容器内触发(并且不会重新加载代码)


有没有办法将源文件夹放入一个docker映像中,该映像中的boot2docker仍然会触发容器中的inotify?我宁愿不使用轮询,因为在Virtualbox共享中使用轮询会给主机带来沉重的CPU成本。

这是boot2docker的限制,因为这种双层间接寻址,您必须使用Virtualbox和docker进行一次轮询。看起来您最好设置自己的Vagrant机器,并使用另一种方法共享文件夹,或者通过上面评论中提到的NFS、RSYNC或Unison插件

也许inotify事件在Linux下会按预期触发,但在
boot2docker
下不会:(希望Docker开发人员正在关注!我决定用另一种方式,将所有源代码放在Docker容器中。通过这样做,inotify应该会启动,但是,对源代码的所有更改都可以立即在链接的容器中使用。请参阅我的项目: