我不确定我是否应该使用Puppet。我通过provision.sh更新并安装。
我的Vagrantfile
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu32"
config.vm.provision :shell, path: './provision.sh'
config.vm.network "public_network"
end
provision.sh
apt-get update
apt-get -y install build-essential git-core python-software-properties nodejs
apt-get -y install vim
apt-get -y install curl
curl https://raw.github.com/fesplugas/rbenv-installer/master/bin/rbenv-installer | bash
现在我需要将以下内容添加到顶部的〜/ .bashrc中。或者我可以准备一个文件.bashrc并用〜/ .bashrc
替换它export RBENV_ROOT="${HOME}/.rbenv"
if [ -d "${RBENV_ROOT}" ]; then
export PATH="${RBENV_ROOT}/bin:${PATH}"
eval "$(rbenv init -)"
fi
然后运行source .bashrc
然后运行以下命令。
rbenv install 2.0.0-p247
rbenv rehash
gem install bundler
bundle
sudo apt-get install libpq-dev
gem install pg -v '0.15.0'
答案 0 :(得分:8)
您可以在provision.sh脚本中执行此操作。 Vagrant会自动将您的Vagrantfile所在的目录与来宾VM共享为/vagrant
文件夹。
根据需要创建.bashrc文件,并将其放在与Vagrantfile相同的目录中。我会遗漏''。并将其称为bashrc
,这样您就不会忘记它。
然后您可以添加到您的provision.sh脚本:
cp /vagrant/bashrc ~/.bashrc
source ~/.bashrc
注意:bash配置以root用户身份运行,如果要将其用作非root用户,则必须稍微修改一下。
cp /vagrant/bashrc /home/<username>/.bashrc
su - <username> -c "<command to run as user>"