为什么要使用Vagrant
通常我们在搭建开发环境时,会使用一键安装包,如wamp,phpStudy等,可以很方便快捷的搭建好开发环境。安装插件也非常方便。但是这样在团队开发时会带来一个问题,就是不同开发环境下的中间件版本不一致。每个程序员的开发环境都可能会有差异,如何统一不同的开发环境呢?这时我们就可以使用Vagrant。
Vagrant是什么?
Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。
这是百度百科上对Vagrant的介绍,简而言之就是用来管理虚拟机的工具。可以快速创建、配置、打包虚拟机,从而统一开发环境。
Vagrant的使用
下载Vagrant
安装非常简单,找到对应系统版本下载安装即可。
下载vagrant
建议先将box下载到本地节约时间
添加box
#以bento/centos-7.3为例
vagrant box add bento/centos-7.3 ./vagrant/boxes/centos-7.3.box #./vagrant/boxes/centos-7.3.box是本地的box路径
初始化
cd ./vagrant/bento #进入目录
vagrant init bento/centos-7.3 #初始化
启动虚拟机
vagrant up #启动时会显示ssh端口地址等信息
连接虚拟机
vagrant ssh #如果没安装ssh,可以使用xshell等第三方工具连接
配置文件
修改目录下的vagrantfile文件
config.vm.box = "centos7.3" #box名字
config.vm.hostname = "centos" #hostname
config.ssh.username = "vagrant" #ssh登陆名
config.ssh.password = "vagrant" #ssh登陆密码
config.vm.network "public_network" #网络设置,动态设置IP
config.vm.network : private_network, ip: "192.168.31.220" #网络设置,静态设置IP
#共享目录,修改目录权限
config.vm.synced_folder "F:/www", "/www/wwwroot", create: true, owner:"www", group: "www"
注意事项
Nginx/Apache中刷新页面不生效是由于静态文件缓存造成的,修改配置文件即可。
#Nginx配置修改
sendfile off;
#Apache配置修改
EnableSendfile off