1.概念了解
对于本地的开发环境,Laravel文档上推荐的是搭建Homestead环境,我们这里就使用VirtualBox、Vagrant和Laravel Homestead这个Vagrant Box来搭建环境。其中:
- VirtualBox——虚拟机软件
- Vagrant ——命令行接口,自动化安装虚拟机
- Laravel Homestead——封装好的Vagrant Box
之所以使用vagrant搭建环境,而不是使用日常的WAMP服务器直接安装配置,是因为现实的开发环境相比这个复杂太多,数据库,反向代理服务器,缓存等等,线上需要部署各种软件,且要确保软件版本等等。因此实际上开发环境最好能实现跟现实线上环境一样就最好。
vagrant实际上就是装了Linux的VirtualBox虚拟机,加上一系列套件。Laravel Homestead就是官方封装好的开发环境,包含PHP,Nginx、Redis等等。
题外话,感兴趣的可以去了解下Vagrant和Docker的区别。
2.VirtualBox和Vagrant安装部署
这两个直接上官网下载即可:VirtualBox、Vagrant(我直接安装的最新版本)
3.下载配置Homestead
在自己的本地开发目录下直接clone下来就好,或者直接上去下载
git clone https://github.com/laravel/homestead.git Homestead
如果失败的话把https换成git
接着添加box,最后那个参数就是Box名。
Vagrant box add laravel/homestead
下载速度一般会比较慢,建议先把box下载下来然后再进行加载。(下载链接在执行上一条代码的时候能看到,downloading后面那条链接)
vagrant box add laravel/homestead /path/to/virtualbox.box
4.修改配置
修改homestead
实际上homestead就是配置box的,网络配置还有虚拟机和磁盘共享的目录等等。
配置提供器:
provider: virtualbox
配置共享文件夹:map是实际磁盘目录
folders:
- map: ~/Code
to: /home/vagrant/Code
还有配置Nginx站点等等,具体配置内容根据自己需求参考Laravel文档配置
5.启动虚拟机
直接命令启动虚拟机,vagrant就会启动并配置好共享文件夹和Nginx站点
vagrant up
这里有个地方需要注意,如果这条命令没有反应的话解决方法有两个
- virtual box和vagrant的版本问题,这两个版本可能不适配,可能不能用最新的。
- 这个方法比较简单,直接把powershell更新到5.0就OK了
连接的时候可以直接在对应目录下直接执行
vagrant ssh
最后环境配置完,可以在虚拟机内直接composer创建项目
composer create-project --prefer-dist laravel/laravel blog
或者用composer安装laravel安装器,再创建项目
composer global require "laravel/installer"
laravel new project
基本环境已经搭起来了,其实只要明白思路,官方文档还是很清晰的。有什么问题欢迎在评论区进行交流~