Vagrant同步文件夹选项

Vagrant同步文件夹选项,第1张

概述在主机和VM之间实现Vagrant NFS“同步文件夹”的最佳方法是什么? 一般来说,我终于能够让NFS工作了,但它需要在VM中进行一些调整;我不确定如何自动化这些更改以供其他人使用. 具体来说,我必须修改/ etc / passwd和/ etc / group中的UID / GID以匹配导出文件系统的用户/组的UID / GID. (例如主机使用502:20,VM apache用户必须设置为使用 在主机和VM之间实现Vagrant NFS“同步文件夹”的最佳方法是什么?

一般来说,我终于能够让NFS工作了,但它需要在VM中进行一些调整;我不确定如何自动化这些更改以供其他人使用.

具体来说,我必须修改/ etc / passwd和/ etc / group中的UID / GID以匹配导出文件系统的用户/组的UID / GID. (例如主机使用@R_419_6941@:20,VM apache用户必须设置为使用@R_419_6941@:20)

如果没有此更改,我会遇到阻止Web应用运行的各种权限/所有权问题.通过UID / GID匹配,一切都很好.

我已经阅读了所有可以找到的文档,包括Vagrant网站.

作为旁注:我也尝试过本机文件夹同步(痛苦地慢)和rsync(100%cpu ……无法使用)

NFS似乎是性能的赢家,但我的设置是粗略的.

如果它有任何区别,我正在使用以下内容:

>主持人:OS X 10.9.2
> Vagrant:1.5.4
>提供商:VMware Fusion
>盒子:厨师/ centos-6.5
>开发应用程序:Magento 1.8

解决方法 在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
总结

以上是内存溢出为你收集整理的Vagrant同步文件夹选项全部内容,希望文章能够帮你解决Vagrant同步文件夹选项所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1047382.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存