###如何安装应用
当我们第一次使用Box创建VM时,它通常是个没有装太多应用的裸机。所以,就会面临一个问题: 如何快速并有效的安装工作需要的软件,如数据库、Web服务器等?
目前,基本上有两种方式:
####手动安装
EST.
2013
###如何安装应用
当我们第一次使用Box创建VM时,它通常是个没有装太多应用的裸机。所以,就会面临一个问题: 如何快速并有效的安装工作需要的软件,如数据库、Web服务器等?
目前,基本上有两种方式:
####手动安装
###什么是Vagrant Box
谈论完了Vagrantfile,让我们看看Vagrant的另外一个重要概念Box。它是Vagrant运行VM的必要条件。
基本上,从头开始建立一个VM是相当耗时的工作,于是Vagrant使用一个基础映像(base image), 克隆它并快速创建一个可用的VM。
在Vagrant的世界里,所有这些基础映像统称为Box。简单地说,Box可以理解为创建VM时需要的模板,通过这些模板,我们可以创建VM。
###Vagrantfile
Vagrantfile是Vagrant启动并设置VM的配置文件,每个VM都必须有一个Vagrantfile。
当执行Vagrant init,Vagrant便会帮我们生成一个默认的Vagrantfile。
当然,不同的VM可以根据需求更改Vagrantfile的配置信息。
对于开发团队,我们可以将Vagrant配置文件放入版本管理系统,从而整个团队能够共享并不断改进该文件,在团队内部提供一种方便快捷的方式,构建产品运行环境。
譬如,我们可以执行如下代码生成Vagrantfile
mkdir vm && cd vm
vagrant init precise64 http://files.vagrantup.com/precise64.box
Vagrant会提示
A Vagrantfile has been placed in this directory. You are now
ready to 'vagrant up' your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
'vagrantup.com' for more information on using Vagrant.
查看当前目录,会发现Vagrantfile已经生成。
###背景介绍
最近的Java项目是个同海外团队合作的遗留系统,包括数据库服务器、邮件服务器、Web服务器、FAST搜索引擎、JBOSS中间件等等节点。为了便于团队使用,我们在Amazon 的EC2上建立了一套完整的端到端的运行环境。
团队成员在本地搭建了Web环境,数据库环境,便于开发及调试。但由于Mac上安装FAST并不是一件易事,因此在本地跑应用的时候依赖于Amazon EC2的FAST节点。
持续集成、CI在当今的时代已经不是什么新鲜玩意了,越来越多的团队已经了解并运用在实践中。对于我们和海外客户共同开发的这种情况,CI挂了可不是太好,因此在每次提交代码之前,需要确保本地所有的测试都能通过,才能提交代码。
于是乎,问题就来了: