[原创]安装Laravel Homestead(入门篇)

1 万事开头难-从0到1开始安装Laravel开发环境 本文背景: Homestead环境是笔者在Windows 7旗舰版下面安装的,如果是win10,请记得一定要使用“以管理员身份运行”,不然可能会出现各种奇怪的权...

1 万事开头难-从0到1开始安装Laravel开发环境

本文背景:

Homestead环境是笔者在Windows 7旗舰版下面安装的,如果是win10,请记得一定要使用“以管理员身份运行”,不然可能会出现各种奇怪的权限问题。

另外,本文需要在Windows上面安装git客户端,记得替换掉windows下面的命令行哈,下载地址顺便提供一下:https://git-scm.com/downloads

打开laravel的官方文档地址:laravel 5.4

官方高度推荐使用他们的Laravel Homestead(家园),那么我们接下来先安装这个本地开发环境吧。

本文会按照官方原文的方式介绍如何安装,但也会着力添加一些牛逼的技巧进去。

1.1 介绍

Laravel官方提供了一个很棒的本地开发环境,叫Laravel Homestead,它是基于Vagrant(可移植开发环境)制作的预包装好的Vagrant box(这玩意可以在同类操作系统下几分钟就能帮你搭建好完整的本地开发环境),Homestead 可以运行在Windows,Mac,或者Linux操作系统,包含了几乎一切你想用Laravel开发惊艳应用程序所需要的工具,包含Nginx,PHP7.1,MySQL,Postgres, Redis, Memcached, Node等

备注:如果你用的是Windows操作系统,你需要启用硬件虚拟化技术(VT-x),通常需要你在系统启动的BIOS设置那里开启(enable),另外,如果你的系统使用了Hyper-V这种虚拟化技术在你的UEFI系统,那么为了能够使用VT-x需要先禁用它(Hyper-V)。

这个Laravel Homestead(Vagrant box)里面包含了这些软件程序:

  1. Ubuntu 16.04
  2. Git
  3. PHP 7.1
  4. Nginx
  5. MySQL
  6. MariaDB
  7. Sqlite3
  8. Postgres
  9. Composer
  10. Node (With Yarn, Bower, Grunt, and Gulp)
  11. Redis
  12. Memcached
  13. Beanstalkd
  14. Mailhog
  15. ngrok

1.2 安装与设置第一步

在启动Homestead环境之前,你必须跟Vagrant同时安装 VirtualBox 5.1VMWare,以及Parallels ,请注意:后面这三个软件( VirtualBox 5.1VMWareParallels )只需要安装一个就行了,笔者推荐大家安装oracle的VirtualBox,其它两个笔者就不说了。

开始安装Homestead这个vagrant box:

Win+R输入cmd打开命令行,如下:

attachments-2017-05-d8fTgkwr5911910fd08bf.png接着在命令行模式下面输入以下命令下载Homestead的:

如果上面这个命令没安装成功,那有可能是你的vagrant版本过低,请更新为最新版本。

然后实际由于国内网络已知问题,我们发现下载Homestead这个vagrant box出奇地慢,如下:

attachments-2017-05-8vCSfRk8591193590a9a3.png真心伤不起啊,根本没有下载速度,不能忍,不过我们发现竟然有这个box的直链,好吧,我们用迅雷总行了吧(买个年费会员会节约你大量的下载时间),好吧,拿到下载链接:virtualbox.box(注意:这篇文章的发布时间是2017年5月9日,所以这个链接不一定总是保持更新和有效的),接下来,等待迅雷帮我们下载完事,如下:

attachments-2017-05-iXnv2ZTQ5911953d7d979.png虽然家里无线网络不是很给力,但是总比下载速度为0要好吧。

接下来,为了方便,我们把下载好的virtualbox复制到cmd打开的初始目录(我的是C:/Users/admin),我们手动添加这个下载好了的vagrant box

vagrant box add laravel/homestead virtualbox.box

attachments-2017-05-a3FswOkv59119a100ca1e.png

有点快,10几秒钟就搞定了。

安装Homestead:

官方建议我们把homestead直接安装在用户主目录(C:/Users/admin),好吧,我们现在已经在用户主目录了,如下:

git clone https://github.com/laravel/homestead.git Homestead

attachments-2017-05-03Pb9m7n59119bc705c07.png

接着进入Homestead目录(cd Homestead),官方建议我们不要直接使用这个git仓库的master分支,而是去Github版本发行页(https://github.com/laravel/homestead/releases)找到一个稳定的版本,ok,我们直接拿当前最新的v5.2.4,开始checkout出来:

cd Homestead
git checkout v5.2.4
git checkout -b v5.2.4

attachments-2017-05-ZUyYYSYE59119d719cbed.png接着执行如下命令来创建Homestead.yaml文件:

init.bat

attachments-2017-05-nvUVJogt59119ea2d2bc0.png配置Homestead

打开Homestead.yaml文件,修改如下(我们发现竟然默认就是virtualbox的配置,保持默认配置,忽略掉这一节)。

注意:当然官网上还有对NFS(网络文件系统)和rsync(一个强大的文件同步工具)的类型的共享文件介绍,小伙伴们可以去看下哈。

接下来,如果你想通过Ngnix配置多个站点的话,那就请使用如下类似的命令:

sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public

请记得,如何你更改了Homestead.yaml这个配置文件的sites,请记得使用vagrant reload --provision来更新虚拟机的的配置哈。

接下来,我们修改hosts文件,不知道同学们有没有用过switchHosts这个hosts修改软件,如果没有用过建议下载一个,神器啊。

192.168.10.10 homestead.app

唉?请问你这个ip怎么来的,建议同学们自己打开Homestead.yaml这个文件看下哈。

接下来,我们启动vagrant box

vagrant up

attachments-2017-05-iW6GNJWm5911a3ce07284.png

出问题了,laravel/homestead这个box没找到,后来笔者一番探索之后发现,竟然是box版本捣的鬼,同学们可以使用vagrant box list查看自己的box信息(包含版本信息0),如下:

vagrant box list

attachments-2017-05-xrzAz8Fv5911a6a1575e8.png

~/Homestead/scripts/homestead.rb文件做如下修改并保存:

# config.vm.box_version = settings["version"] ||= ">= 2.0.0"
config.vm.box_version = settings["version"] ||= ">= 0"

attachments-2017-05-JGB2XJus5911a4f980cb7.png我们再次启动vagrant,发现成功了,nice。

attachments-2017-05-UHGbL6Ms5911a737a0993.png

转载请注明来源地址:https://wenda.shukaiming.com/article/6,否则会通过法律手段追究版权责任,谢谢合作。

  • 发表于 2017-05-09 19:28
  • 阅读 ( 1474 )
  • 分类:编程工具

你可能感兴趣的文章

相关问题

5 条评论

请先 登录 后评论
不写代码的码农
Kemin

架构工程师

35 篇文章

作家榜 »

  1. Kemin 35 文章
  2. golanglover 5 文章
  3. D.Chen 2 文章
  4. salamander 1 文章
  5. 深圳-伟 1 文章
  6. 广训 1 文章
  7. PHP小菜 1 文章
  8. 后端彭于晏 0 文章