分布式虚拟开发环境工具vagrant building and distributing working environments tool: Vagrant
15 November 2013
Vagrant是什么?
Vagrant是一款分布式虚拟开发环境工具Vagrant. You can create and configure lightweight, reproducible, and portable development environments. Vagrant](http://www.vagrantup.com)
为什么需要Vagrant?
Vagrant provides easy to configure, reproducible, and portable work environments built on top of industry-standard technology and controlled by a single consistent workflow to help maximize the productivity and flexibility of you and your team.
第一步:在MacOSX上安装虚拟机VirtualBox
** 在MacOSX上安装虚拟机VirtualBox
wget http://download.virtualbox.org/virtualbox/4.3.2/VirtualBox-4.3.2-90405-OSX.dmg
open VirtualBox-4.3.2-90405-OSX.dmg
open /Volumes/VirtualBox/VirtualBox.mpkg
** 启动虚拟机VirtualBox
open /Applications/VirtualBox.app
第二步:在MacOSX上安装虚拟机Vagrantup
## 安装方法一
gem install vagrant
## 安装方法二
wget http://files.vagrantup.com/packages/a40522f5fabccb9ddabad03d836e120ff5d14093/Vagrant-1.3.5.dmg
open Vagrant-1.3.5.dmg
open Vagrant.pkg
第三步:在MacOSX上使用虚拟机Vagrantup
# 打开终端
vagrant
vagrant -v
第四步:在MacOSX上安装Vagrant虚拟开发环境
- 什么是Vagran Box? Vagran Box就是一个Vagran虚拟开发环境。
- Vagran Box在哪里下载?
- https://github.com/mitchellh/vagrant/wiki/Available-Vagrant-Boxes
- http://www.vagrantbox.es/
# 安装Vagran虚拟开发环境(操作系统)
vagrant
vagrant box
vagrant box list
vagrant box add
vagrant box add lucid64 http://files.vagrantup.com/lucid64.box # Box名称lucid64是由用户自己定义
vagrant box add lucid32 http://files.vagrantup.com/lucid32.box
vagrant box add precise64 http://files.vagrantup.com/precise64.box
# 删除Vagran虚拟开发环境(操作系统)
vagrant box remove lucid32
第五步:使用Vagran虚拟开发环境
# 启动Vagrant虚拟开发环境
## 本地准备工作
mkdir vagrantup
cd vagrantup
touch readme.txt
echo "Hello Vagrant" > readme.txt
cat readme.txt
## 创建工具Vagrant本地初始化文件
vagrant box list
vagrant init precise64
ls -al
## # 开始创建该目录操作系统并且启动虚拟操作系统
vagrant up # 对应于命令vagrant halt 和 vagrant destroy
## 开始使用工具Vagrant
vagrant up #视需要而定
vagrant ssh
cd /vagrant
ls -al
cat readme.txt
## 返回本地系统
exit
## 退出操作系统
vagrant halt # 对应于命令:vagrant up(部分功能)
## 删除工具Vagrant本地初始化文件及其该目录操作系统
vagrant destroy # 对应于命令:vagrant up(部分功能)
第六步:虚拟开发环境开发Rails软件
参考资料.第一步
- http://www.virtualbox.org/wiki/Downloads
- http://downloads.vagrantup.com
- https://gist.github.com/2714101
参考资料.第四步
- http://www.mysqlops.com/2012/05/09/puppet-vagrant.html
- http://stackoverflow.com/questions/8896890/few-vagrant-boxes-in-one-project
参考资料.第四步
- http://downloads.vagrantup.com/
- https://www.virtualbox.org/wiki/Downloads
- http://vagrantup.com/docs/getting-started/index.html
- http://blog.bloc.io/a-better-way-to-set-up-rails-on-windows
- http://railscasts.com/episodes/292-virtual-machines-with-vagrant
参考资料.第五步
- http://mingjin.thoughtworkers.org/?p=155
- http://mingjin.thoughtworkers.org/?p=170
- http://mingjin.thoughtworkers.org/?p=176
- http://dougalmatthews.com/2011/02/27/my-vagrant-workflow/
- http://vagrantup.com/v1/docs/bridged_networking.html
Next Steps
Please take a look at or jump right into Usage if you’d like.