`

使用vagrant创建统一的开发环境

阅读更多

一.安装vagrant和virtual box并下载ubuntu 12.04 32 bit镜像

# virtual box
https://www.virtualbox.org/wiki/Downloads
# vagrant
http://downloads.vagrantup.com/

# ubuntu 12.04 32 bit
http://files.vagrantup.com/precise32.box

 

二.初始化并安装rails环境

# 进入rails项目文件夹
# vagrant setup
vagrant box add rubywine ~/box/precise32.box
vagrant init rubywine
# edit Vagrantfile
config.vm.network :private_network, ip: "192.168.33.10"

vagrant up
vagrant ssh

# add /.vagrant and Vagrantfile to gitignore
sudo apt-get update
sudo apt-get install curl
curl -L https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm
source ~/.bash_profile
rvm -v
rvm install 2.1.3
rvm use 2.1.3 --default
ruby -v
gem -v
gem source -r https://rubygems.org/
gem source -a https://ruby.taobao.org

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
node -v

sudo apt-get install mysql-server mysql-client
sudo apt-get install libmysql-ruby libmysqlclient-dev

sudo apt-get install -y imagemagick
cd /vagrant/
gem install bundler
gem update --system
gem update
bundle install
rake db:create db:migrate db:seed
rails server
# visit http://192.168.33.10:3000/

exit
vagrant halt
vagrant package --vagrantfile Vagrantfile --output ~/box/rails.box

 

# 安装jdk7 via ppa
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

sudo apt-get install oracle-java7-set-default
java -version

 

# 安装 elasticsearch
# http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/setup-repositories.html
# http://happycasts.github.io/ep/use-elasticsearch-with-rails/

wget -qO - http://packages.elasticsearch.org/GPG-KEY-elasticsearch | sudo apt-key add -
sudo vim /etc/apt/sources.list
# deb http://packages.elasticsearch.org/elasticsearch/1.3/debian stable main

sudo apt-get update
sudo apt-get install elasticsearch
sudo service elasticsearch start
# 设置开发启动
sudo update-rc.d elasticsearch defaults 95 10

 

三.然后遇到问题了,我打包后队友怎么使用呢?

这里有两种方法

1.把 Vagrantfile加入到.gitignore,然后按照以下步骤初始化

vagrant box add rubywine ~/box/rails.box
vagrant init rubywine
# edit Vagrantfile
config.vm.network :private_network, ip: "192.168.33.10"

vagrant up
vagrant ssh

# add /.vagrant and Vagrantfile to gitignore

bundle install
rake db:create db:migrate db:seed
rails server
# visit http://192.168.33.10:3000/

 

2.不把 Vagrantfile加入到.gitignore里面,但是不使用vagrant init命令,因为vagrant init会自动生成一个

vagrant box add rubywine ~/box/rails.box
# edit Vagrantfile to set the config.vm.box = "rubywine" name to yours,here is rubymine
config.vm.box = "rubywine"

vagrant up
vagrant ssh

bundle install
rake db:create db:migrate db:seed
rails server
# visit http://192.168.33.10:3000/

 

四.其他命令

vagrant box list
vagrant box remove box_name

vagrant halt
vagrant destroy

 五.php

http://imcn.me/html/y2012/12401.html

 

 

分享到:
评论

相关推荐

    devenv-old:使用 Vagrant 和 Ansible 创建的 Oreore 开发环境

    devenv-old我不再使用它了之前在 Ubuntu 上创建了一个运行在 Vagrant 上的开发环境,但是由于以下事件,我决定再次在 Mac 上创建一个开发环境。 不能使用bundle open 使用“gulp-watch”或“nodemon”时未检测到文件...

    vagrantpress, vagrant/Puppet的WordPress开发环境.zip

    vagrantpress, vagrant/Puppet的WordPress开发环境 VagrantPressVagrantPress 是开发WordPress主题和模块的打包开发环境。我最初创建这个项目是为了帮助开发一个WordPress博客的子模块。安装了什么Ubuntu信任( 14 04...

    go_vagrant:使用Vagrant设置Go开发环境

    流浪汉此仓库包含一个Vagrantfile,用于设置简单的go环境以启动并运行go开发。 只需Vagrant。 为您的项目创建一个主文件夹。 将Vagrantfile复制到根目录。 vagrant up 现在,您可以运行vagrant ssh来访问您的计算机...

    Vagrant是用于构建和分发开发环境的工具。-Ruby开发

    Vagrant网站:https://www.vagrantup.com/来源:https://github.com/hashicorp/vagrant HashiCorp讨论:https://discuss.hashicorp.com/c/vagrant/24 Vagrant是一种构建工具和分发开发环境Vagrant网站:...

    Ruby-Vagrant是一个用于创建和部署虚拟化开发环境的Ruby工具

    Vagrant 是一个基于 Ruby 的工具,用于创建和部署虚拟化开发环境。它使用 Oracle 的开源 VirtualBox 虚拟化系统,使用 Chef 创建自动化虚拟环境。 功能特性: 支持快速新建虚拟机 支持快速设置端口转发 支持自定义...

    vagrant_1.9.7_x86_64.msi

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。

    vagrant-centos-phpdev:使用 Vagrant 创建的 PHP 应用程序开发环境

    Vagrant CentOS 7 PHP开発环境requirement Vagrant Virtualbox vagrant-vbguestプラグインvagrant plugin install vagrant-vbguest vagrant-itamaeプラグインvagrant plugin install vagrant-itamae

    vagrant_1.8.7.msi

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。

    vagrant_2.1.1_x86_64.msi

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。

    vagrant_2.2.3_x86_64

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。

    dev.env:无需Docker或Vagrant的零设置开发环境-源码

    它所执行的功能与所命名的功能完全相同,可帮助您快速创建开发环境,而无需进行设置-dev.env将为您设置并启动所有内容。现在支持什么平台? 当前,仅Mac OS X已过测试。 请帮我在Linux和Windows上检查它如何安装要...

    vagrant_1.9.7_x86_64.7z

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。

    pioneer-windows-development-environment:使用Packer,Vagrant和Chocolatey创建Windows开发环境

    pioneer-windows-development-environment:使用Packer,Vagrant和Chocolatey创建Windows开发环境

    vagrant-anaconda:使用Vagrant的Anaconda定制环境

    然后,运行vagrant up -将为您预配置并创建一个CentOS 8。 接下来,您需要初始化Anaconda环境。 $ vagrant rsync-back 此命令会将/usr/share/anaconda找到的文件拉到anaconda/目录中。 现在,您应该能够编辑...

    vagrant_2.2.6_x86_64.rpm

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用 Chef 创建自动化虚拟环境。同时,Vagrant也支持其他类型的虚拟机系统,例如 kvm, vmware,甚至是容器...

    vagrant_2.2.6_x86_64(window版本).zip

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境

    最新版vagrant_2.2.7_x86_64 window版.rar

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。

    win10下使用virtualbox + vagrant配置ruby开发机环境

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。搭配Cmder如丝般顺滑,实现你所有关于Mac&Linux的幻想

    mean-vagrant:使用 MEAN 堆栈开发环境的 Vagrant 配置

    为 MEAN 开发创建 Vagrant 虚拟开发环境流浪汉是用于创建轻量级和便携式虚拟开发环境的开源软件。 Vagrant 就像 VirtualBox 的“包装器”一样工作,它可以使用自己的终端命令创建、配置和销毁虚拟机。 Vagrant 促进...

    Suma-Vagrant:Suma Vagrant开发和演示环境

    这也是推荐的Suma开发环境。 安装 安装和 。 克隆或下载此存储库。 在终端应用程序中,从Suma-Vagrant目录中键入vagrant up并单击Return键。 注意:如果您使用的是OSX,则可能需要输入管理员密码。 因此,可以将...

Global site tag (gtag.js) - Google Analytics