工欲善其事必先利其器,开发环境 和 开发工具 就是 我们开发人员的剑,所以我们需要一个快并且好用的剑
刚开始做开发的时候的都是把开发环境 配置在 自己的电脑上,随着后面我们接触的东西越来越多,慢慢的电脑上都是各种环境了,php,java,python,nodejs等等,非常麻烦,并且经常由于某种原因就把电脑重装了,ORZ,所以环境都要重来。所以打造一个属于自己并且可以移动的环境是非常重要的。
vagrant就是一款构建虚拟开发环境的工具,支持window,linux,mac,总有一款适合你。并且vagrant 可以把配置好的环境打包成一个box,分享给其他人直接使用,非常方便
系统要求:(本人mac系统)
机器支持虚拟化,有时候需要调整bios开启cpu虚拟化。
第一步:安装virtualbox (本人virtualbox版本 4.3.30)
第二步: 安装 vagrant (本人vagrant 版本 Vagrant 1.6.3)
$ vagrant -v
Vagrant 1.6.3
vagrant init 初始化vagrantfile
vagrant add box 添加box,自动帮你生成vagrantfile
vagrant halt 关闭虚拟机
vagrant destroy 销毁虚拟机
vagrant ssh 连接虚拟机
vagrant reload 重新加载vagarntfile文件
vagrantsuspend暂时挂起虚拟机
vagrant status 查看虚拟机运行状态
第四步:示例演示
4.1 下载box
下面是ubuntu的两个官方地址:
$ mkdir -p ~/vagrant/boxes
$ vagrant box add ubuntu64precise64.box //添加box
4.2 新建一个lnmp(linux + nginx + mysql + php-fpm)虚拟机
$ cd ~/vagrant && mkdir lnmp
$ cd lnmp
$ vagrant init ubuntu64 //初始化
$ vagrant up //启动虚拟机lnmp
$ vagrant ssh //进入虚拟机lnmp
这个虚拟机就新建好了,是不是很快!!熟悉linux的就可以修改源,安装软件了
$ sudo apt-get install nginx mysql-server mysql-client php5-cli php5-fpm php5-gd php5-mysql
第五步:个性化配置Vagrantfile
在进行 vagrant init 之后我们会发现对应的目录下有个Vagrantfile文件
直接上截图,就不一个一个解释了
注意事项
问题一)使用 Apache/Nginx 时会出现诸如图片修改后但页面刷新仍然是旧文件的情况,是由于静态文件缓存造成的。需要对虚拟机里的 Apache/Nginx 配置文件进行修改:
#nginx配置
sendfile off
#apache 配置
EnableSendFile off
问题二:启动多个虚拟机提示错误“2222 端口 in use”