Mac 上搭建基于 Homestead 的 Laravel 开发环境

Laravel 官方推荐使用 Homestead 搭建环境,那么这个 Homestead 究竟是什么鬼?相信很多和我一样不是专门搞服务器的同学看过各种资料后还会有点迷糊。刚开始看了一些介绍后我以为 Homestead 是一个整合了 Nginx + PHP + MySQL + Composer 还有其他 Laravel 需要环境的安装包加管理器的概念,类似 Win 平台上的 wnmp 之类的东西。

1. Homestead 是什么

实际上 Homestead 是一台虚拟机的原型,类似我们买电脑后预装的系统,只是这个系统预装了一切 Laravel 需要的东西。而我们最先进行的步骤安装 VirtualBox 和 Vargrnt 实际上就是安装了虚拟机。这意味着实际上 Homestead 安装完成后我们的 Mac 上并没有也不需要安装 PHP、Nginx、MySQL 等等的东西,所有东西都安装在另一台机器上(虚拟机)。

1.1 安装 VirtualBox、Vargrant

这一步非常简单,官网都有 dmg 安装包,正常安装即可。

验证是否安装成功在终端使用以下命令行,显示版本信息就 OK 了。

vagrant -v

安装 Homestead Vagrant Box,直接输入以下命令行:

vagrant box add Laravel/Homestead

然后会提示选择版本,选择 virtualbox 版本相应序号即可。

这个步骤相当于下载虚拟机的预装系统,文件超过 1G,全程最耗时的步骤,请挂 VPN,你懂的。另外实在不行也可以考虑对 homestead.box 直接进行下载,并且手动导入。由于我自己是挂了 VPN 直接下了,手动导入的内容就不多说,文末会给出相应教程链接。

1.2 安装 Homestead

# 切换到用户文件夹 
cd ~
# 克隆 Homestead 项目 到 home/Homestead 文件夹
git clone https://github.com/Laravel/homestead.git Homestead

git 项目克隆完成后,切换到 Homestead 文件夹,创建相关配置文件:

# 切换到 Homestead 目录 
cd ~/Homestead
# Mac / Linux……
bash init.sh

2. 配置 Homestead.yaml

走完上面步骤后 Homestead 文件夹里会出现一个 Homesstead.yaml 配置文件。这个文件可以配置 Mac 与虚拟机的共享文件夹、Nginx 站点、数据库等等、虚拟机使用 cpu 数、内存等等。现在我们的目的是先安装并运行 Laravel 就行了,先使用其预设值即可,先不进行修改。但是我们需要根据其预设值对 Mac 进行一些操作。

2.1 本地映射虚拟机

打开 Homesstead.yaml,先看一眼 folders 的值:

folders:
    - map: ~/code
      to: /home/vagrant/code

folders 决定了 Mac 与虚拟机的共享文件夹,以上预设值指:Mac 的 ~/Code 目录与虚拟机的 /home/vagrant/Code 是映射的关系。这时我们的 Mac 上并没有 ~/Code 这个目录,自行新建即可。

# 切换到用户目录 
cd ~

2.2 编辑 /etc/hosts 文件

这时我们再看一看 Homesstead.yaml 的 IP 和 sites 两项:

IP: "192.168.10.10"
……
sites:
    - map: homestead.test
      to: /home/vagrant/code/Laravel/public
……

IP 是指 Homestead 的 IP,sites 则是指定域名去对应虚拟机的文件目录。记住这两个值,相应的去 /etc/hosts 文件最后添加如以下格式内容即可。另外提一下 etc 文件夹使用 Fider 的前往文件夹,输入 /etc/ 就可以进入了。

192.168.10.10  homestead.test

2.3 数据库

这时我们再看一看 Homesstead.yaml 的 数据库配置项:

databases:
    - Homestead

 当然你也可以在虚拟机运行过程中自行创建数据库。

连接地址:127.0.0.1
端口号:33060(MySql)
默认账号密码:Homestead / secret

2.4 配置 ssh

这部分不需要对配置文件修改,关键是在启动之前,我们需要在主机上生成 ssh key,使用如下命令:

ssh-keygen -t rsa

然后一路回车

到这里准备工作就已经完成了,我们可以启动虚拟机了。

3. Laravel 配置

3. 1 启动虚拟机

在 Mac 命令行中输入 cd ~/Homestead, 切换到 Homestead 项目所在到目录,然后输入 vagrant up,启动画面如下图:

attachments-2019-08-fmAoqw9s5d48e89275c51.png

安装后如果出现 Check your Homestead.yaml (or Homestead.json) file, the path to your private key does not exist. 错误,请查看。Mac 上安装 Homestead 出现错误 Check your Homestead.yaml (or Homestead.json) file, the path to your private key does not exist.。SSH 登入虚拟机,启动成功之后,输入 vagrant ssh 登陆到 vagrant 虚拟机,如下图所示:

  • 发表于 · 2019.08.06 10:52 · 阅读 · 1901

[版权声明] :本文文字、代码及图片版权归原作者所有,任何媒体、网站或个人未经本网协议授权不得采集、整理、转载或以其他方式复制发表。已经本站协议授权的媒体、网站,在使用时必须注明“稿件来源:学研谷”。

0 条评论

请先 登录 后评论
猜猜我是谁
XY -开发者 @ 学研谷

32
提问
207
回答
67
文章