Vagrant同步文件夹选项
在主机和VM之间实现Vagrant NFS“同步文件夹”的最佳方法是什么?
一般来说,我终于能够让NFS工作了,但它需要在VM中进行一些调整;我不确定如何自动化这些更改以供其他人使用. 具体来说,我必须修改/ etc / passwd和/ etc / group中的UID / GID以匹配导出文件系统的用户/组的UID / GID. (例如主机使用502:20,VM apache用户必须设置为使用502:20) 如果没有此更改,我会遇到阻止Web应用运行的各种权限/所有权问题.通过UID / GID匹配,一切都很好. 我已经阅读了所有可以找到的文档,包括Vagrant网站. 作为旁注:我也尝试过本机文件夹同步(痛苦地慢)和rsync(100%CPU ……无法使用) NFS似乎是性能的赢家,但我的设置是粗略的. 如果它有任何区别,我正在使用以下内容: >主持人:OS X 10.9.2 解决方法
在Vagrantfile中,您可以将当前的uid / gid分配给nfs映射. (在配置后查看主机/ etc / exports.)
config.nfs.map_uid = Process.uid config.nfs.map_gid = Process.gid 使用Puppet作为配置程序,您可以更改这些值: config.vm.provision :puppet,:facter => { "host_uid" => config.nfs.map_uid,"host_gid" => config.nfs.map_gid,} do |puppet| ... 所以你可以在木偶范围内使用它,例如变量,例如 user { "www-data": ensure => present,uid => $::host_uid,gid => $::host_gid,} 我认为在厨师中,自定义json选项相当于稍后在厨师食谱中使用它 Vagrant.configure("2") do |config| config.vm.provision "chef_solo" do |chef| # ... chef.json = { "map" => { "uid" => config.nfs.map_uid,"gid" => config.nfs.map_gid } } end end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |