插件设置 nfs 类型的共享目录:vagrant-bindfs

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

Vagrant 支持设置多种类型的主机与虚拟机之间的共享目录,如果你用的是 virtualbox,默认的共享目录的类型是 virtualbox 自带的... 这种类型的文件系统性能比较慢 .. 想提升性能可以使用其它类型的共享目录,比如 nfs ... 不过这样你很可能又会遇到权限的问题 ..

解决的方法就是使用 bindfs 重新再绑定一下虚拟机上的那个共享目录到一个新的位置上 .. 这样你就可以设置目录的权限了 ... 先安装一下这个插件 ..

vagrant plugin install vagrant-bindfs

打开虚拟机的配置文件 .. 找一台虚拟机去配置一下 .. 比如这个 node1 ... 先设置一个 nfs 类型的共享目录 ... node1.vm.synced_folder "./app", "/mnt/app-data", type: "nfs" ..

然后再用 bindfs 重新绑定一下它 .. node1.bindfs.bind_folder "/mnt/app-data", "/app", 再设置一下权限相关的东西,force_user 可以设置目录的拥有者 .. force_group 设置的是目录的群组 .. 如果虚拟机上的这个 /app 目录里面不是空白的,可以再用一个 o: "nonempty" ..

config.vm.define "node1" do |node1|
node1.vm.network "private_network", ip: "192.168.33.11"
node1.vm.hostname="node1"
node1.vm.synced_folder "./app", "/mnt/app-data", type: "nfs"
node1.bindfs.bind_folder "/mnt/app-data", "/app",
force_user: 'root', force_group: 'root', o: "nonempty"
end

保存 .. 在项目的目录下面创建一个新的目录 .. 名字是 app ... 在这个目录的下面再添加一个文件 .. index.html .. 随便添加点东西 .. 再保存一下 ..

回到终端 .. 重新再启动一下 node1 这台虚拟机 .. 在启动的时候会在虚拟机上安装 bindfs ,然后再给我们绑定共享目录 .. 完成以后,登录到 node1 ..

查看一下 /app 这个目录 .. 它的拥有者是 root ,群组也是 root ... 现在这个目录跟我们的项目下面的 app 目录是同步的 ..

插件设置 nfs 类型的共享目录:vagrant-bindfs《 Vagrant:虚拟机管理 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点