使用Vagrant,有没有办法在多个虚拟机之间共享/同步文件夹?

时间:2015-04-20 18:36:10

标签: vagrant virtual-machine virtualbox

我希望在我的系统上运行多个VM,并且每个VM都有一个或两个与主机同步的文件夹。我使用vagrant和virtualbox一起使用。当已经有一个VM(通过vagrant up)然后创建一个新的VM(通过另一个包含不同Vagrantfile的目录中的vagrant)它没有安装shared / synced文件夹。是否可以跨多个VM共享/同步文件夹,如果可以,如何?

注意:我也尝试使用多机,即编辑Vagrantfile来启动多台机器,但只有一台机器获取共享文件夹。


编辑2015年4月22日:

从下面的讨论中,我认为这个问题可能是因为使用Virtualbox而造成的。在尝试重新编译另一个操作系统并使用另一个VM应用程序后会更新。

1 个答案:

答案 0 :(得分:1)

official documentation中所述,您可以在Vagrantfile中设置特定的同步文件夹。因此,您可以为每个项目设置相同的共享文件夹,只需将此类内容放入每个Vagrantfile

即可
config.vm.synced_folder "../host_shared_src_folder", "/guest_src_folder"

所以我有像这样的Vagrantfile

Vagrant.configure(2) do |config|
  config.vm.box = "base_ubuntu"
  config.vm.synced_folder "../shared", "/shared"
end

文件夹的布局

testvagrant
| -- shared
| -- testenv1
     | -- Vagrantfile
| -- testenv2
     | -- Vagrantfile

然后我只在testenv1和testenv2文件夹中执行 vagrant up ,并且可以在/ shared下查看(并写入)共享文件夹