必定成功-拒绝恐惧,面向小白的Laravel Homestead环境搭建(上篇)

作者: 温新

分类: 【Laravel】

阅读: 3128

时间: 2020-10-25 10:02:00

序言

一旦站在高处,再也难以回到小白。如同《全职高手》中的荣耀大神叶秋,面对小白知识,还要看介绍。换到我们技术开发上来说,那就是站在高处,再也难以写出小白的文章。

我是小白,这一刻,让你拒绝恐惧!

Laravel是一个非常优秀的PHP框架。根据Laravel官方推荐的Homestad环境来看,已经吓退了一部分开发者,也就是还没有开始就已经放弃了。就我而言,我放弃了官方推荐的环境,而使用集成环境。如今再次想要尝试安装官方推荐的环境,仍旧不容易,尝试下来发现不是很难,难的是报错,因为你不到解决的方法。因为它是开源,因为不懂它,报错往往就意味着,放弃已经开始了。

我零零散散花了一天时间,终于把Laravel Homestad弄好了。这期间遇到了很多报错,有的解决了,有的未解决,下面在安装的过程中会有记录。虽然遇到报错,但总算成功了,这一刻,让你拒绝内心的恐惧,我是小白!欢迎各位加我,一起前进!

准备工作

系统版本:win10专业版,版本号:2004

虚拟机版本:VirtualBox-6.0.14-133895-Win.exe

管理工具版本:vagrant_2.2.6_x86_64.msi

版本控制软件:git.2.26.2

后面关于Homestead与virtualbox.box全部安装在D盘,如果没有说明,后面的安装全部基于D盘。

1)VirtualBox与vagrant我安装在了C盘。这个根据自己的实际情况来选择;

2)为了确保安装成功,请一定使用如上版本。若使用了最新版而导致了错误,那么很抱歉,我目前无法决绝。

这是一个安装过程的内心记录,可以跳过,不影响下面的安装。

10月24日晚上,心血来潮想要再次尝试下官方推荐的环境,而我对这些配套的环境并不了解。

关于VirtualBox,我直接使用了官方的最新版,最终导致了一个Vagrant无法管理这个最新版本的问题,尝试者去解决这个问题,最终的结果是没有解决,不得已卸载了最新版。

注意:对于已经安装了的开发者,如果不知道解决方法,千万不要升级最新版,因为它会导致致命性错误。如果知道解决方法,请不吝赐教,谢谢!

关于VirtualBox与vagrant这个两个软件的安装过程就不再多说了,下载下来后,一直下一步就行了。关于Vagrant安装的过程会重启电脑一次。

导入virtualbox.box

步骤一:进入电脑D盘

步骤二:D盘根目录下右键Git Bash Here

方法一

# 在出现的窗口中,输入以下命令
vagrant box add laravel/homestead

这是一个漫长的过程,等上一两天都有可能无法下载完成。打开墙后,下载速度仍旧很慢很慢。推荐如下方法二。

方法二:迅雷下载

使用方法一的命令之后,在窗口中会出现下载virtualbox.box的链接地址,复制地址到迅雷中进行下载。最好开个会员,不然下载速度仍旧很慢。这里不得不说,国家的真的很强大。

我下载的virtualbox.box的版本是10.1.1。通过此url查看版本https://app.vagrantup.com/laravel/boxes/homestead。

导入box

# 添加box
vagrant box add laravel/homestead D:\virtualbox.box

# 查看box
vagrant box list

vargrant box list 返回laravel/homestead (virtualbox, 0) 说明已经返回成功

到这里,这一安装已经完成,重要的步骤来了,安装Homestead

安装Homestead 管理脚本

仍旧是在 导入virtualbox.box 这一步打开的git base窗口中进行操作,此时还是位的D盘根目录。

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

这一步有可能会很慢,也可能会很快,如果慢的难以忍受了,就打开墙吧。

cd Homestead
bash init.sh

执行bash init.sh后会生成三个如下文件:

  • Homestead.yaml主要信息配置文件,如站点目录、虚拟主机
  • after.sh每一次重启盒子之后会被调用
  • aliases每一次盒子重置之后会被替换到虚拟机的~/.bash_aliases文件中

Homestead.yaml 配置文件介绍并直接修改配置

使用编辑打开Homestead.yalm文件

---
# 对虚拟机系统进行配置
# 对系统的ip、内存、cpu进行配置
ip: "192.168.10.10"
memory: 2048
cpus: 2
# 指定虚拟软件
provider: virtualbox

# 秘钥
authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

# 共享文件夹配置
folders:
	# 对应本机(也就是win10)中的开发目录
    - map: D:/Homestead_web
    # 对应Homestead上的文件夹
      to: /home/vagrant/code

# 站点配置,在这里可以配置多个站点
sites:
	# 虚拟主机域名
    - map: demo01.com
    # 对应本地开发项目的路径
      to: /home/vagrant/code/laravel/demo01/blog/public
# 数据库
databases:
    - demo01

features:
    - mariadb: false
    - ohmyzsh: false
    - webdriver: false

# ports:
#     - send: 50000
#       to: 5000
#     - send: 7777
#       to: 777
#       protocol: udp

对于这些配置,有的并不是很了解,还在学习过程中。

修改windows hosts文件

路径C:\Windows\System32\drivers\etc

打开hosts文件,添加如下配置:

192.168.10.10	demo01.com

使用vagrant启动虚拟机

# 在D:\Homestead目录中启动虚拟机
vagrant up

修改homestead.rb文件

使用vagrant up启动虚拟机时,会一直去下载最新版本的vitualbox.box,这里通过修改版本来解决。

步骤一:打开 D:\Homestead\scripts 目录

步骤二:编辑该目录下的homestead.rb文件

步骤三:修改配置

config.vm.box_version = settings['version'] ||= '~> 9'改为config.vm.box_version = settings["version"] ||= ">= 0"

使用vagrant up启动报错的解决方法

报错:Call to WHvSetupPartition failed

Call to WHvSetupPartition failed: ERROR_SUCCESS (Last=0xc000000d/87) (VERR_NEM_VM_CREATE_FAILED).

解决方法

步骤一:打开windows功能

关闭Hyper-v、虚拟机平台

步骤二:以管理员身份打开windows PowerShell或使用cmd

命令行窗口中输入bcdedit /set hypervisorlaunchtype off

然后重启电脑即可

配置ssl

启动时若提示没有配置ssl,则进行相关配置

# 配置ssl
ssh-keygen

由于开始不知道,我全部使用回车键。

后面根据找的方法来,别人的配置方法如下:

# 后面发现别人是这样配置的,我没有按照这个进行配置
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
eval "$(ssh-agent -s)"
ssh-add -k ~/.ssh/id_rsa

配置到这到,已经全部配置成功了。

再次使用vagrant up启动虚拟机

vagrant up

这一次启动成功。

安装Laravel8

步骤一:创建开发目录

D盘根目录创建代码开发目录Homestead_web\laravel

如:D:\Homestead_web\laravel

步骤二:创建项目目录(注意)此目录要与sites目录中的to路径一致

创建项目目录:D:\Homestead_web\laravel\demo01

步骤三:下载laravel8

打开Windows PowerShell并切换到 D:\Homestead_web\laravel\demo01 目录

PS D:\Homestead_web\laravel\demo01> composer create-project --prefer-dist laravel/laravel blog

下载完成后,输入demo01.com即可看到laravel界面。

由于篇幅原因,本篇文章分为2篇进行记录。下篇请点击链接阅读 必定成功-拒绝恐惧,面向小白的Laravel Homestead环境搭建(下篇)

我是小白,期待和优秀的你一起同行!

小白

2020年10月25日

请登录后再评论