自己安装了一篇,第一次接触,确实比较繁琐。记性越来越不好了,为了防止重复造轮子,再次记录过程。

1.环境介绍

操作系统:macOS Sierra

工具:(1)VirtualBox 5.2.10

(2)Vagrant macOS 64-bit

(3)Homestead Vagrant 盒子 laravel/homesterad 5.2.0

(4)Homestead

(5)Laravel 5.6

2.正式操作

2.1安装VirtualBox 5.2.10

传送门

选择对应的版本,下载安装。

2.2安装Vagrant

传送门

选择本机对应的操作系统,下载安装

2.3克隆Homestead

传送门

命令如下

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

初始化

// Mac/Linux...
bash init.sh// Windows...
init.bat

正常情况下,这个时候会在Homestead目录下生成Homestead.yaml

        Homestead.yaml是配置文件,配置内容如下:

        Laravel学院传送门

设置 Provider

Homestead.yaml 文件中的 provider 键表示使用哪个 Vagrant 提供者:virtualboxvmware_fushion、 vmware_workstationparallels 或 hyperv,你可以将其设置为自己选择的提供者,当然对大部分人来说也没得选:

provider: virtualbox

 配置共享文件夹

Homestead.yaml 文件中的 folders 属性列出了所有主机和 Homestead 虚拟机共享的文件夹,一旦这些目录中的文件有了修改,将会在本地和 Homestead 虚拟机之间保持同步,如果有需要的话,你可以配置多个共享文件夹:

folders:- map: ~/Development    #本地环境,不要复制我to: /home/vagrant/Code    #虚拟机环境,不要复制我

如果你只是创建了很少的站点,使用一般的映射就够了。不过,随着站点数量的增加,你就会遇到性能问题,尤其是在包含大量文件的低端机器或项目中,性能问题可能会非常明显。如果你不幸遇到了这个问题,可以尝试映射每个项目到各自的 Vagrant 文件夹:

folders:- map: ~/code/project1to: /home/vagrant/code/project1- map: ~/code/project2to: /home/vagrant/code/project2

如果要开启 NFS,只需简单添加一个标识到同步文件夹配置:

folders:- map: ~/Developmentto: /home/vagrant/Codetype: "nfs"

注:使用 NFS 的话,需要考虑安装 vagrant-bindfs 插件。该插件可用于在 Homestead 盒子中为文件和目录维护正确的用户/组权限。

你还可以通过 options 传递其他 Vagrant 支持的同步文件夹选项:

folders:- map: ~/codeto: /home/vagrant/codetype: "rsync"options:rsync__args: ["--verbose", "--archive", "--delete", "-zz"]rsync__exclude: ["node_modules"]

配置 Nginx 站点

对 Nginx 不熟?没关系!通过 sites 属性你可以方便地将“域名”映射到 Homestead 虚拟机的指定目录,Homestead.yaml 中默认已经配置了一个示例站点。和共享文件夹一样,你可以配置多个站点:

sites:- map: homestead.appto: /home/vagrant/Code

如果你是在 Homestead 盒子启动之后进行了上述修改,需要运行 vagrant reload --provision 更新虚拟机上的 Nginx 配置。

            Hosts文件

不要忘记把 Nginx 站点配置中的域名添加到本地机器上的 hosts 文件中,该文件会将对本地域名的请求重定向到 Homestead 虚拟机,在 Mac 或 Linux上,该文件位于 /etc/hosts,在 Windows 上,位于 C:\Windows\System32\drivers\etc\hosts,添加方式如下:

192.168.10.10 homestead.test

确保 IP 地址和你的 Homestead.yaml 文件中列出的一致,一旦你将域名添加到 hosts 文件,就可以在浏览器中通过该域名访问站点了:

http://homestead.test

注:在真正可以访问之前还需要通过 Vagrant 启动虚拟机上的 Homestead 盒子。

2.4安装laravel/homesterad盒子

官方是用一句代码搞定的,如下:

vagrant box add laravel/homestead

我反正搞不定,只能用迅雷大法下载离线包进行安装。5.2.0 版本 传送门

https://app.vagrantup.com/laravel/boxes/homestead/versions/5.2.0/providers/virtualbox.box

目前(18年5月5日)最新版为6.0.0,如果需要下载最新版,可以将上面的5.2.0,替换成6.0.0。可以使用迅雷下载

用此方法,需要手动添加,命令如下,~/Downloads/virtualbox.box为目录地址,根据当前环境更改

vagrant box add laravel/homestead ~/Downloads/virtualbox.box

终端中显示绿色的box:Successfully add box laravel/homestead (v0) for 'virtualbox',就表示成功。可以使用下面的命令查看,如果出现 laravel/homestead (virtualbox , 0)就表示成功。

vagrent box list

注意:因为是手工添加,肯定会比自动的麻烦。上面添加成功之后,还得有下面的步骤,不能跳过。

Homestead目录创建metadata.json文件,内容如下

{"name": "laravel/homestead",            //盒子名称"versions": [{"version": "5.2.0",             //版本号"providers": [{"name": "virtualbox","url": "virtualbox.box"   //盒子所在路径}]}]
}

注意:这里,我把virtualbox.box放到了Homestead目录下,生成以上文件后,再当前Homestead目录下,执行

vagrant box add metadata.json

即可添加带有版本号的盒子,可通过 vagrant box list 查看, 最后通过 vagrant up 即可载入开启虚拟机。

  其它方法传送门

2.5开启虚拟主机

执行vagrant up,开启虚拟主机,初次执行时间会有点长。

注意:(1)如果第二行显示找不到 laravel/homestead ,那么程序会自动调用远端链接进行下载。这说明上面2.4那步加载盒子失败了,请重新尝试加载盒子。这边正常的话是读取本地的盒子,30s算很长了,不要傻等。

(2)也有可能提示目录映射不正确,请排查Homestead.yaml文件的配置

显示下面的信息,并执行完毕后,就表示开启成功。

homestead-7:Successfully add box laravel/homestead (v5.2.0) for 'virtualbox'!

    2.6安装Laravel

之前一直很迷惑,上面的步骤到底是干嘛的,我到底有没有安装了Laravel,甚至还去本地环境下载了Laravel用于映射到虚拟机中。。

        解答:上面安装了一个虚拟机,然后配置好了php等一系列环境,然后,进入这个虚拟机,开始下载Laravel,以后都在虚拟机中进行操作,跟本地无关了。

        2.6.1进入虚拟机

vagrant ssh

2.6.2查看共享目录

进入上面配置的folder共享目录,没有就创建,正常情况下,映射目录中已和本地目录中一致。

2.6.3下载Laravel installer

composer global require "laravel/installer"

这边就能体现出Homestead的优势了,composer,php,git全部都在环境变量中,都是最新版本,不需要自己考虑

2.6.4新建应用

安装完成后,通过简单的 laravel new 命令即可在当前目录下创建一个新的 Laravel 应用,例如,laravel new blog将会创建一个名为 blog 的新应用,且包含所有 Laravel 依赖。该安装方法比通过 Composer 安装要快很多:

laravel new blog

如果之前已经安装过旧版本的 Laravel 安装器,需要更新后才能安装最新的 Laravel 5.6 框架应用:

composer global update

2.6.5通过浏览器访问

通过http://homestead.test/blog/public访问Laravel。看到下面的界面,即表示成功


总结:我为了这个Homestead折腾了将近4个小时,包括下载。按照官方文档,用命令行去下载virtualbox真的很难很难。不过当连接上Homestead的时候,感觉时间花的还是挺值的,以后会方便很多。
好啦,Laravel之旅开始了!继续跳坑去了!

通过Homestead安装Laravel相关推荐

  1. Laravel Homestead安装笔记

    引言: 最近开始学习laravel框架,了解到有个laravel homestead的box,开发起来非常方便快捷,于是就准备开始配置homestead虚拟开发环境了 什么是Homestead 要想学 ...

  2. Laravel Homestead安装和使用

    1.先安装vagrant和 VirtualBox.git.composer 1.1.Virtualbox:https://www.virtualbox.org/ 1.2.Vagrant:https:/ ...

  3. laravel之homestead安装教程

    Homestead 最佳本地开发环境 Homestead Win Laravel 致力于让整个 PHP 开发体验变得愉快, 包括你的本地开发环境. Vagrant 提供了一种简单,优雅的方式来管理和配 ...

  4. 手把手教你Homestead安装,并填坑!!

    来源:http://www.jianshu.com/p/ae9d1261bbd8 话说作为laravel的开发者,你听说Homestead应该很久了,可是官方推荐的开发环境在国内为什么鲜有人用?我这几 ...

  5. homestead 安装mysql8_homestead安装php redis扩展

    看到本文,你应该遇到了homestead中php环境没有redis扩展的窘境,网上的教程也不通用,因为那些教程都只是针对单一机器单一版本php环境下的安装方法,而homestead安装了多个php版本 ...

  6. php框架laravel win10,composer 安装Laravel (win10)

    服务器要求 Laravel 对系统有一些要求.当然,所有这些要求 Laravel Homestead 虚拟机都能满足,因此强烈推荐你使用 Homestead 最为你的开发环境. 当然,假如你不使用 H ...

  7. Homestead安装

    安装软件 安装vargrant: 安装Virtualbox 安装git 导入box 下载homestead.box,点击下载. 新建了一个文件夹名为homestead,然后将下好的box重命名为hom ...

  8. homestead php.ini,Homestead安装php扩展的方法

    Homestead安装php7.1的MongoDB扩展的方法 Laravel官方Vagrant镜像Homestead,默认没有安装php的Mongodb扩展,以下是php7.1手动安装mongodb扩 ...

  9. 使用Composer安装Laravel步骤

    2019独角兽企业重金招聘Python工程师标准>>> 注:要在控制台中使用composer命名,需要将Composer及PHP的可执行文件(.exe/.bat)所在目录配置到系统环 ...

  10. PHP安装laravel(win+linux)

    作为一名不优秀的程序猿,忙碌的四月终于结束了,五一大假的最后一天,终于有时间来整理整理这段时间的收获了. 一.laravel介绍 首先看看http://www.sitepoint.com/网站做的一个 ...

最新文章

  1. 树莓派视觉小车 -- 人脸追踪(人脸识别、PID控制舵机运动)
  2. TCMalloc(Thread-Caching malloc) 基本设计原理
  3. Photoshop CC2015软件安装资料及教程
  4. 蚂蚁动态卡片,让App首页实现敏捷更新
  5. Linux--根文件系统的挂载过程分析
  6. 解析Java对象引用与JVM自动内存管理(2)
  7. 腾讯专家献上技术干货,带你一览腾讯广告召回系统的演进
  8. IDEA控制台输出中文乱码的问题及解决方案
  9. 基于微服务架构的门户平台改造的研究
  10. spp色散关系 matlab,表面等离极化激元(SPP)基本原理教案分析.ppt
  11. 用ajax来上传图片,使用AJAX上传图片
  12. 电信光猫 友华PT921G 研究
  13. 姓名投票c语言未给定候选人,C语言上机
  14. android 状态栏为白色的时候图标不显示的解决方案
  15. Java+Maven实现Mail自动发送邮件功能
  16. ArcGIS遇到严重的应用程序错误的解决办法
  17. 小说更新太慢怎么办_写网络小说写得太慢怎么办?
  18. Cadence(virtuoso)集成电路设计软件基本操作——库和库文件
  19. DoT/DoH/DoQ 之 CoreDNS配置
  20. Unity打开Windows虚拟键盘

热门文章

  1. 高一下册计算机教案,高一信息技术教案
  2. HTML+CSS+JavaScript实现植物大战僵尸(附演示地址)
  3. 软件设计师备考全攻略(附本人笔记)
  4. 信息系统项目管理(二)网络协议、网络存储技术、网络工程、数据仓库和中间件
  5. 最好用的 网络神偷V10.7
  6. pyhton中matplotlib箱线图的绘制(matplotlib双轴图、箱线图、散点图以及相关系数矩阵图))...
  7. deepstream多路rtsp流,避免相互影响
  8. 易灵思FPGA-软件Efinity和Modelsim联仿设置
  9. 米谟科技 3D音频VR编辑器——sound flare声弹是什么
  10. [手机分享]黑莓手机7系列分享之——黑莓7290