我正在使用Vagrant在Virtualbox上设置一个Ubuntu框。 在我指定同步文件夹同步我的代码与客户的无业游民文件:流浪同步的文件夹在流浪的时候通过宿主文件写入文件
config.vm.synced_folder "/host/target/webapp", "/guest/webapp"
我的问题时,我的机器被破坏,然后用无业游民了重建才会出现。在这种情况下,Vagrant会将客户端上的我的文件夹同步到主机上的我的文件夹,而不是主机到客户端。
"/guest/webapp" ---> "/host/target/webapp"
我不喜欢这种行为在所有的,如果我没有在我的代码检查主机上我的版本控制,我会失去我的代码。
同步是否应该是双向的?有没有一种方法可以将其配置为仅将一种方式更好的主机同步到guest虚拟机。在vagrant basic sync
找不到任何关于此的意见在那里的意见,那里的建议,它在哪里我的供应(厨师独奏),那里的问题的原因。 要从此排除提供阶段我并以下:
流浪了--no-提供
的主机内容,其中同步到客人。
RM -r /客体/ web应用/在来宾
导致主机内容,其中移除。
的mkdir /客/ web应用/ guest虚拟机上
创建的文件夹测试,其中还主机上创建的测试。
我认为这证明同步是双向的。
这真的很奇怪,因为我只看到了主机 - >来宾,所以即使您在来宾上同步现有文件夹,它也会被来自主机的文件夹内容所取代。此外,我还有一些疑问,如果主机文件夹已被客人内容替换,那么当前文件夹将为空,因为流浪者将当前文件夹的默认文件夹同步为'/ vagrant'。对于这种情况(/ vagrant文件夹),你确认它能正常工作? –
我明白你的疑惑。我使用Chef-Solo进行配置,将标准数据放到“/ guest/webapp”,我不知道哪一个会先发生,文件夹的同步或加载标准数据的配置。这只会发生,如果它是第一个规定,换句话说,当我运行任何流浪汉重新加载/提供 - 配置和框已经创建主机文件夹将不会被覆盖。 –
安装共享文件夹发生在配置之前。第一次运行'vagrant up'时不需要配置'vagrant up --no-provision',你会看到主机文件夹没有被修改,它必须来自你的配置 –