您的位置:首页 > 其它

快速打造自己开发环境 vagrant + virtualbox

2017-12-07 13:27 483 查看
工欲善其事必先利其器,开发环境 和 开发工具 就是 我们开发人员的剑,所以我们需要一个快并且好用的剑

刚开始做开发的时候的都是把开发环境 配置在 自己的电脑上,随着后面我们接触的东西越来越多,慢慢的电脑上都是各种环境了,php,java,python,nodejs等等,非常麻烦,并且经常由于某种原因就把电脑重装了,ORZ,所以环境都要重来。所以打造一个属于自己并且可以移动的环境是非常重要的。
vagrant就是一款构建虚拟开发环境的工具,支持window,linux,mac,总有一款适合你。并且vagrant 可以把配置好的环境打包成一个box,分享给其他人直接使用,非常方便
系统要求:(本人mac系统)
机器支持虚拟化,有时候需要调整bios开启cpu虚拟化。
第一步:安装virtualbox (本人virtualbox版本 4.3.30)
具体安装包请直接从官网下载:https://www.virtualbox.org/wiki/Downloads
第二步:  安装 vagrant (本人vagrant 版本 Vagrant 1.6.3)
$ vagrant -v
Vagrant 1.6.3
具体安装包请直接从官网下载:https://www.vagrantup.com/downloads-archive.html
第三步:vagrant 基本命令(官网文档:https://docs.vagrantup.com/v2/getting-started/index.html)
vagrant init        初始化vagrantfile
vagrant add box    添加box,自动帮你生成vagrantfile
vagrant halt        关闭虚拟机
vagrant destroy    销毁虚拟机
vagrant ssh        连接虚拟机
vagrant reload      重新加载vagarntfile文件
vagrantsuspend暂时挂起虚拟机
vagrant status      查看虚拟机运行状态
第四步:示例演示
4.1 下载box
下面是ubuntu的两个官方地址:
Ubuntu precise 32 VirtualBoxhttp://files.vagrantup.com/precise32.box
Ubuntu precise 64 VirtualBoxhttp://files.vagrantup.com/precise64.box
如果你要其他系统的镜像,可以来这里下载:http://www.vagrantbox.es/
$ mkdir -p  ~/vagrant/boxes
$ cd~/vagrant/boxes && wget http://files.vagrantup.com/precise64.box $ 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”
解决办法:(参考文章:Vagrant SSH errors with multiple VMs: Port 2222 in use)
config.vm.network "forwarded_port", guest: 22, host: 2220 ,id: 'ssh'

作者:郭大帅哥
链接:http://www.jianshu.com/p/6bf70d551a0d
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: