Homestead
是一个可以在本地快速部署一个 Laravel
项目的虚拟机盒子,它基于 ubuntu
的基础上,内置了 php-fpm
, nginx
, mysql
等等的服务,事实上可以有很多个本地php
的开发部署方案,比如 phpstudy
, docker
等,但是用虚拟机部署,更接近生产环境,可以使我们平时开发时对虚拟机的操作,如果有必要可以以同样的方式同步到生产环境中,大部分 Linux
的操作大同小异。
虽然 Homestead
对外的官方搭档是 Laravel
项目,但是其实项目中内置了很多其他 php
框架对应的 nginx
配置,只需要修改一点配置文件,就可以使用 proxy
模式,或者生成适配 thinkphp
, yii
等框架的配置,虚拟机中还部署了多个版本的 php
,简单的指令就可以让你轻松切换 php
版本,所以该虚拟机盒子作为开发环境还是挺高效方便。
开始
软件
拉取 Homestead 脚本
以下指令使用 git bash
操作
1 | git clone https://github.com/laravel/homestead.git ~/Homestead |
Laravel/Homestaed 文件讲解
主要的核心文件是 Homestead.yaml
,下面描述各个部分的配置块作用
Homestead.yaml
1 |
|
部署项目
比如我们需要新增一个 Laravel
开发的站点 laravel.test
,我们需要修改 Homestead.yaml
中的内容
1 | sites: |
修改完以后执行以下命令
1 | cd ~/Homestead |
本地修改 host
即可
1 | 192.168.56.56 laravel.test |
如果我们的项目是其他框架开发的,我们可以在 Homestead/scripts/site-types
中找到可用的类型,比如 thinkphp
1 | sites: |
更多详细用法可阅读 官方文档
其他
vagrant scp
插件,将本地文件传输到虚拟机
1 | vagrant plugin install vagrant-scp |