Ubuntu下使用Vagrant搭建虚拟开发环境
缩短搭建开发环境的时间搭建一个开发环境,需要完成操作系统的安装,必要的开发支撑软件的安装,配置操作系统和代码运行环境。如果所有的操作都需要由人来手动操作的话,一个下午的时间是必要的。搭建开发环境是团队中新人加入时的必不可少的第一课。而团队的老人们,无可避免的会接到无数的“新手”的发问。更不用说,当著名的Wxdows系统需要重新安装系统的时候,无论谁,基本上一天的工作时间算是交代了,更不用说各类开发软件的配置如果会影响代码执行结果的时候会引入什么样的“灾难”了。使用Vagrant实现开发环境的快速搭建成为提升效率的显著功能特性之一。
Vagrant提供了统一的安装程序配置环境:
使用统一的配置文件( vagrantfile )实现对服务器的统一配置。
使用共享文件夹( shared folder )实现代码编辑向“服务器”的快速提交
使用软件配置脚本( Provisioning scripts )实现服务器上的运行环境的快速建立
拥有标准化的虚拟机分享网络,极大缓解了分享开发环境配置时的网络带宽压力
可以具备一个供安装维护测试使用的可抛弃的服务器端环境。
小李是进入开发团队的新人。从学校毕业出来,小李就到了一个公司从事服务器端的软件开发工作。由于兴趣爱好的原因,他新近加入了这个网游开发团队。他接到的第一个命令就是“搭建一个服务器工作日志分析系统,为服务器代码优化改进做准备”。
小李从团队项目经理那里得到了服务器环境安装手册以及服务器日志数据库设计文档。小李需要在自己的机器上用虚拟机安装一套服务器环境,用以进行日志数据的分析和提取。
“好吧,估计这几天的时间要搭到系统安装里去了。”小李做好了心理准备,打开了服务器环境安装手册。意外的,手册很简单:
安装Vagrant和VirtualBox,从文件服务器(地址XX.XX.XX.XX/Software)下载Vagrant、VirtualBox安装文件,并完成安装
执行 git clone git@xx.xx.xx.xx:vagrantconfig.git 获取vagrant配置文件
进入vagrantconfig目录,运行 Vagrant up ftp://xx.xx.xx.xx/vagrant/trusty-server-cloudimg-amd64-vagrant-disk1
执行 vagrant ssh 验证安装
从文件服务器(xx.xx.xx.xx/data)下载日志数据库dump文件,完成Mysql数据库内容的加载
……
“这就完了?”半个小时后,小李目瞪口呆的看着自己机器上运行的虚拟机,一套服务器日志系统已经加载完成了。小李已经可以着手进行数据的分析并开始做具体编码设计了。
小结如果还在为“Work on my machine”错误头疼,如果安装开发环境还是团队心头的痛,那为什么不试试用用Vagrant呢?
Vagrant的主要使用者对于需要在服务器端进行开发的人,Vagrant管理的虚拟机镜像提供了统一的生产运行环境。开发者可以随心所欲的决定什么时候想“服务器”端发布程序,什么时候在“服务器”端进行必要的测试,而丝毫不用担心会影响生产环境服务器的稳定运行。
对于各类设计人员,使用Vagrant,可以让设计人员可以随心所欲的选择自己的开发用操作系统、设计软件、编辑IDE软件,可以通过与虚拟机之间的共享目录,快速实现设计文件在生产环境中的测试验证。
对于系统维护人员,使用Vagrant,可以随意进行对系统安装设置的过程进行演练,验证工程安装手册的完备程度。也可以对系统维护中的各项操作指令随意进行实验。这对于提升售后服务团队的问题快速解决能力,获得实战经验的非常重要的手段。
Vagrant对开源开发的贡献开源的开发者常常无法像一个普通团队那样面对面的坐在一起进行开发工作。由于开发团队是一种松散的组织模式,因此,也不是每一个开发者都可以获得在服务器端上的开发授权。此时Vagrant就提供给这些开发者必要的代码运行环境,极大程度的提升了开源开发者向开发中心小组提交代码的质量。此外,Vagrant的虚拟机分享模式,也使得开源开发者获得统一的服务器运行环境的成本变得异乎寻常的低廉。