首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过Vagrantfile更改文件

如何通过Vagrantfile更改文件
EN

Stack Overflow用户
提问于 2013-11-08 08:32:28
回答 1查看 5.2K关注 0票数 9

我不确定我是否应该使用Puppet来完成这个任务。我通过provision.sh更新和安装。

我的Vagrantfile

代码语言:javascript
复制
Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu32"
  config.vm.provision :shell, path: './provision.sh'  
  config.vm.network "public_network"
end

provision.sh

代码语言:javascript
复制
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

代码语言:javascript
复制
export RBENV_ROOT="${HOME}/.rbenv"

if [ -d "${RBENV_ROOT}" ]; then
  export PATH="${RBENV_ROOT}/bin:${PATH}"
  eval "$(rbenv init -)"
fi

然后运行源.bashrc

然后运行以下命令。

代码语言:javascript
复制
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'
EN

回答 1

Stack Overflow用户

发布于 2013-11-15 23:49:15

您可以在provision.sh脚本中执行此操作。Vagrant自动将您的Vagrantfile所在的目录作为/vagrant文件夹与来宾VM共享。

根据需要创建.bashrc文件,并将其放在与Vagrantfile相同的目录中。我会省略'.‘并将其称为bashrc,这样您就不会失去对它的跟踪。

然后,您可以向provision.sh脚本中添加:

代码语言:javascript
复制
cp /vagrant/bashrc ~/.bashrc
source ~/.bashrc

注意: bash配置是以root用户身份运行的,如果您希望以非root用户身份使用它,则必须对其进行一些修改。

代码语言:javascript
复制
cp /vagrant/bashrc /home/<username>/.bashrc
su - <username> -c "<command to run as user>"
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19849548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档