我希望在我的系统上运行多个VM,并且每个VM都有一个或两个与主机同步的文件夹。我使用vagrant和virtualbox一起使用。当已经有一个VM(通过vagrant up)然后创建一个新的VM(通过另一个包含不同Vagrantfile的目录中的vagrant)它没有安装shared / synced文件夹。是否可以跨多个VM共享/同步文件夹,如果可以,如何?
注意:我也尝试使用多机,即编辑Vagrantfile来启动多台机器,但只有一台机器获取共享文件夹。
从下面的讨论中,我认为这个问题可能是因为使用Virtualbox而造成的。在尝试重新编译另一个操作系统并使用另一个VM应用程序后会更新。
答案 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下查看(并写入)共享文件夹