之前在Windows上用VirtualBox+Vagrant装了一个CentOS 7的虚拟机,回家后又把Mac上的PHP集成开发环境MAMP给卸载了,也用VirtualBox+Vagrant装一个虚拟机,这次用的是Laravel官方封装好的box————Homestead.
在Mac上折腾了半天,本来也打算装一个CentOS 7系统,我用的阿里云主机也是CentOS 7,但是下载了几个box镜像文件,安装后设置ip访问,总是遇到各种问题,好不容易查资料解决了,重启电脑后又不行了,折腾了几次,终于放弃了,不甘心的我表示有空还要再战一次。
而Homestead是基于Ubuntu系统,其实,Homestead也是一个很好的选择,它自带了PHP 7,nginx,mysq,php-fpm,redis,git,composer等等各种PHP开发要用到的软件,还配置好了开机自启动,可以说是安装好了直接进行开发,不需要关心操作系统环境的问题。
Mac上安装Homestead三部曲:
1.安装好VirtualBox+Vagrant的Mac版
直接去官网下载Mac版安装就好了。
2.下载Homestead
使用在线安装Homestead的方式太慢,简直龟速,还是使用迅雷吧。但是下载地址怎么获取?有个办法,在终端输入vagrant box add Laravel/homestead它会自动查找镜像并下载,这个时候在终端会显示从哪个url下载,复制这个url到迅雷即可。
3.使用Vagrant安装
使用Vagrant安装Homestead的步骤不再多说了。
最后,我们安装虚拟机的目的是为了什么?为了把它作为一台服务器,我们访问还是通过ip的形式去访问。我们需要修改Vagrantfile文件,截取修改的部分:
# Create a private network, which allows host-only access to the machine
# using a specific IP.
config.vm.network "private_network", ip: "192.168.10.31"
config.vm.synced_folder "../website", "/usr/share/nginx/html"
这里设置虚拟机的访问ip是192.168.10.31,并设置映射目录,前一个地址是Mac上的WEB目录,我把网址目录都放website下,后一个地址是虚拟机中nginx的WEB目录。
为了正常访问,需要先设置好nginx的配置文件,Homestead的nginx默认没有配置文件,我在nginx的配置文件目录添加了一个www.conf,然后保存重启nginx服务即可。
修改好文件后,使用命令vagrant reload重启虚拟机,在浏览器访问192.168.10.31即可访问。
以后打开Mac只需输入vagrant up即可启动虚拟机,环境自动启动,太方便了。