【发布时间】:2016-01-07 03:25:16
【问题描述】:
运行 vagrant provision 时,不要在用户环境中安装 ruby gems,而是在 root 用户环境中安装。
这是我的流浪文件:
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.box = "scotch/box"
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.hostname = "scotchbox"
config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]
# Optional NFS. Make sure to remove other synced_folder line too
#config.vm.synced_folder ".", "/var/www", :nfs => { :mount_options => ["dmode=777","fmode=666"] }
config.vm.provision "shell", path: "provision/install.sh"
config.vm.provision "shell", path: "provision/install-gems.sh"
end
还有 install-gems.sh:
#!/usr/bin/env bash
echo "- install sass ..."
gem install sass
echo "- install sass done"
echo "- install compass ..."
gem install compass
echo "- install compass done"
echo "- install bootstrap-sass ..."
gem install bootstrap-sass
echo "- install bootstrap-sass done"
当我运行gem list 时,宝石不会出现,但当我运行sudo gem list 时,它们会出现,我不想这样做。
如何在 vagrant 中以非 root 模式安装 gem?尝试在vagant文件中添加privileged: false,但由于权限原因无法使用。
谢谢!
【问题讨论】:
标签: ruby rubygems vagrant vagrantfile