搜索
首页php框架Laravel终于成功搭建Laravel Sail环境 !

下面由laravel教程栏目给大家介绍怎么成功搭建Laravel Sail环境 ,希望对需要的朋友有所帮助!

前言

什么是美?

在搭建的环境成功启动的那一刻,如果你问我什么是美?

我会毫不犹豫甩出以下这张图:

闲话少说,本文主要分为一下三部分内容,

第一部分,搭建过程,分享自己成功搭建Laravel Sail环境的方法和步骤(与站内的文档有细微对的差别);

第二部分,心路历程,分享自己搭建过程中的心态变化,人不是机器,所以在做事的时候许多想法,一些想法会帮助我们做事,一些则会让我们停滞不前;

第三部分,谈谈以后的事情,也说说为什么会有这篇文章。

让我们开始。

搭建过程

我的电脑

首先明确一下自己电脑的情况,如下图:

那么,如何查看自己电脑的情况呢?

两步。

1.win+R键打开“运行”对话框,输入cmd,回车。

2.在cmd命令行中输入winver,回车,你将会看到以上这张图出现在你的桌面。

如果你的Windows系统跟我的在细节上存在差别,也是可以的,具体可以参照站内教程关于系统的部分。

我这部分,只是为了明确一下自己的系统细节,不是说你的系统必须和我一样。

我的步骤

对于想要搭建环境的朋友来说,这是全文最重要的部分。

我的步骤,和站内给出的教程有着细微的不同,也是在这部分,让我体会到了细节决定成败。

首先,站内Laravel 8 中文文档是这么说的:

在新建 Laravel 应用前,请确保你的 Windows 电脑已经安装了 Docker Desktop。
之后,请确保已经安装并启用了适用于 Linux 的 Windows 子系统 2 (WSL2)。
WSL 允许你在 Windows 10 上运行 Linux 二进制文件。
关于如何安装并启用 WSL2,请参阅微软 开发者环境文档。

一开始,我的安装顺序是:Docker Desktop –>Windows 子系统 2 (WSL2)。

所以,一开始我没有成功。

但是,我仔细阅读留两个补充文档之后,发现,安装顺序应该反过来:Windows 子系统 2 (WSL2)–>Docker Desktop。

具体的步骤可能会经历几次重启,看我们来看:

第1步:

以管理员身份运行cmd;

输入:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

回车,执行完成,重启电脑。

第2步:

以管理员身份运行cmd;

输入:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

回车,执行完成,重启电脑。

第3步:下载 Linux 内核更新包

更新包下载地址

下载完成后,运行,安装,这个更新包安装很快的。

第4步:将 WSL 2 设置为默认版本

以管理员身份运行cmd;

输入:

wsl --set-default-version 2

回车。

第5步:安装Ubuntu和Windows Terminal

打开电脑的微软商店,分别搜索Ubuntu和Windows Terminal,按顺序安装。

顺便提一句,Ubuntu第一次运行的时候,需要你设置账号和密码,但是,输入密码的时候,命令行里面是没有任何提示的,我一开始不知道这一点,有点懵。

第6步:检查成果

运行cmd;

输入:

wsl --list --verbose

回车,我的结果如下图:

重点是我标注的那一行,最后的数字是 2 就可以了。

到这里,你已经非常接近成功了,朋友。

第7步:安装Docker Desktop。

Docker Desktop下载地址

下载完成后,安装,什么都不用管,一直点next,直到完成。

第8步:跟着站内的教程走。

完成了以上步骤,让我们回到站内的环境部署教程,下图中标记的内容开始,提示:点击目录可以一键直达相关内容。

但是我的情况,与教程有一处细微的不同,那就是Docker Desktop开启 WSL2 模式的设置中,我的设置里显示如下图,是默认开启的。

如果你也遇到这种情况,只能说,有缘啊~

第9步:礼物

这一步,请在成功创建测试项目之后,在执行。

创建测试项目之后,需要进行编译,会下载大量的东西,为了加快这一过程,需要把一部分内容修改成国内的镜像源。

站内教程的操作有两个关键:

  1. 新建 sources.list 文件。

  2. 修改 Dockerfile 文件。

在这里,我已经把需要新增的 sources.list 和修改后的Dockerfile 准备好,朋友们可以直接下载,然后替换对应文件即可。

下载地址
提取码:

i3kn

替换目录:

你的项目位置 \ example-app \ vendor \ laravel \ sail \ runtimes \ 8.0

第10步:等待和耐心

替换完成之后,你需要根原教程一样,在项目根目录,也就是example-app内执行:

./vendor/bin/sail up

到了这一步,请给一点耐心,你会看到电脑一直在编译和执行,也许你还会听到电脑风扇的声音变大了,更有可能的情况是,你会经历几次失败。

但是没关系,只要你已经耐心的根据教程操作,并且关键画面都与教程对的上,那你就是对的。

失败的原因,也许是网络,或者其他你无法控制的东西,我在这一步,也失败了好几次,但是,我依然输入 ./vendor/bin/sail up,然后按下回车。

编译成功之后,你就可以用浏览器打开localhost/

如果你看到如下画面,恭喜你,你成功了(是的,没错)。

心路历程

如果你成功安装了 Laravel Sail 环境,那就来听我聊聊天吧。

其实一开始选择 Laravel 环境的时候,也是选的Laravel Sail,但是因为步骤的关系,下载回来的 Ubuntu 子系统不是wsl2模式,于是毫无意外地失败了。

这次尝试失败之后,我开始尝试搭建 Homestead 环境。

于是,真正的折磨开始了,可惜当时的我并不知道这回事,我清晰地记得,第一次按照教程往下搭建的时候,我甚至都不能运行 vagrant up 命令,无法进入虚拟机。

那是大前天的下午,我按照教程走了两遍,无果。

于是我开始翻看教程下的讨论,发现有人留言自己安装环境花了半个月时间。

看到这句话的时候,我惊讶又有一点莫名的安心——我才哪里到哪里啊?对吧。

于是我放下事情,去追番去了。

过后的第二天,也就是前天,我再次尝试安装Homestead环境,这次与前一天的不同是,我参考了b站的视频教程,并且在每一次,安装之后,都重装电脑的系统。

因为不知道谁说的,重装系统可以解决90%的问题(剩下10%是需要重装电脑的人,无法解决的)。

靠着百度搜索、B站视频、以及站内安装Homestead环境的教程,这一天,我成功运行 vagrant upvagrant ssh 进入了虚拟机。

不停地尝试,却没有成功在虚拟机中启动Laravel,说实话我是失落的,但也有一股 我根本没在怕 的想法支持着我一直往下走。

时间来到昨天,经历前一天的失败,我最主要的问题是,Laravel为什么会安装失败?

顺着这个思路,根据系统给出的错误提示去百度(知乎,微信),去尝试,去思考。

最后,可是说是误打误撞地把 Laravel 安装成功了,然而打开测试网址,却发现是No input file specified提示。

根据讨论和百度得出的结果,是虚拟机文件映射的问题。

那就调整 Homestead.yaml 中的配置咯。经过几番尝试,我终于如愿打开了Laravel默认页面。

可是,问题来了:

我无法修改这个页面,文件在我的本机里面找不到!

安装教程原原本本的设置文件映射路径,结果是Laravel安装失败,显示提示是无法删除Laravel目录。

略微调整设置文件映射路径之后,Laravel安装成功,但是打开测试网址,显示No input file specified

最终,再次调整,Laravel安装成功并且可以打开默认页面了,但是,在本机却无法修改。

也就是说,我昨天大半天的时间,都与 Homestead.yaml 文件斗智斗勇,期间,每次失败之后,我没有重装系统。

因为我想,我连重装系统都敢做,为什么我不敢运行 vagrant destory命令和删除相关文件夹呢?

其实,也是因为在多次的尝试和几个教程的比对中,我已经的大概了解每个命令的作用是什么,能达到什么效果。

最终,在昨天傍晚,我再次用浏览器打开了 Laravel 欢迎页面,但是我依然无法修改,这个页面的任何内容,原因和之前一样。

那一刻,我累了。

于是我决定把时间交给Laravel Sail,把Homestead先推到一边。

这两天的尝试,让我的有态度习惯变得更细致,我同时打开了Laravel Sail部署教程,Laravel 8中文文档、文档和几个相关资料,把相关内容看了一遍,总结步骤。

一路下来,居然很顺利,就开始用Docker编译Laravel示例项目了。

我看编译需要一段时间,我趁这段时间,吃了晚饭。

晚饭回来打开电脑,发现编译失败,我内心毫无波动,输入命令再次编译。

然而,异变陡然出现:successful这个单词我还是认识的,我忍住欣喜,打开localhost/

那一刻,我知道Laravel Sail安装成功了。

打开项目文件夹,修改 index.php 的内容,终于,出现了如本文第一张图所示的内容。

真的成功了。

我超棒的。

我想。

以后的事

我在的学校的专业属于设计专业,但是网页设计课让我接触到前端(HTML + CSS + JavaScript),还有游戏设计让我接触到了编程(Unity3d + C#)。

仅仅只是接触了皮毛,当初并没有在意,我的编程尝试也很简单,想通过Python考取计算机二级证书。

结果当然是失败了,因为当时,我还没认识到“重复”这个行为对编程的重要性。

毕业之后从事设计工作,发现自己对设计工作兴致缺缺,今年开始尝试转行,360行,行行转编程。

我也是这么干的。并且我选择世界上最好的语言作为我的入行语言,希望能够成功转行。

感谢这个时代和社区的朋友,提供了大量的学习资料,非常感谢。

以上是终于成功搭建Laravel Sail环境 !的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:learnku。如有侵权,请联系admin@php.cn删除
laravel单点登录方法详解laravel单点登录方法详解Jun 15, 2022 am 11:45 AM

本篇文章给大家带来了关于laravel的相关知识,其中主要介绍了关于单点登录的相关问题,单点登录是指在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统,下面一起来看一下,希望对大家有帮助。

一起来聊聊Laravel的生命周期一起来聊聊Laravel的生命周期Apr 25, 2022 pm 12:04 PM

本篇文章给大家带来了关于laravel的相关知识,其中主要介绍了关于Laravel的生命周期相关问题,Laravel 的生命周期从public\index.php开始,从public\index.php结束,希望对大家有帮助。

laravel中guard是什么laravel中guard是什么Jun 02, 2022 pm 05:54 PM

在laravel中,guard是一个用于用户认证的插件;guard的作用就是处理认证判断每一个请求,从数据库中读取数据和用户输入的对比,调用是否登录过或者允许通过的,并且Guard能非常灵活的构建一套自己的认证体系。

laravel中asset()方法怎么用laravel中asset()方法怎么用Jun 02, 2022 pm 04:55 PM

laravel中asset()方法的用法:1、用于引入静态文件,语法为“src="{{asset(‘需要引入的文件路径’)}}"”;2、用于给当前请求的scheme前端资源生成一个url,语法为“$url = asset('前端资源')”。

实例详解laravel使用中间件记录用户请求日志实例详解laravel使用中间件记录用户请求日志Apr 26, 2022 am 11:53 AM

本篇文章给大家带来了关于laravel的相关知识,其中主要介绍了关于使用中间件记录用户请求日志的相关问题,包括了创建中间件、注册中间件、记录用户访问等等内容,下面一起来看一下,希望对大家有帮助。

laravel中间件基础详解laravel中间件基础详解May 18, 2022 am 11:46 AM

本篇文章给大家带来了关于laravel的相关知识,其中主要介绍了关于中间件的相关问题,包括了什么是中间件、自定义中间件等等,中间件为过滤进入应用的 HTTP 请求提供了一套便利的机制,下面一起来看一下,希望对大家有帮助。

laravel的fill方法怎么用laravel的fill方法怎么用Jun 06, 2022 pm 03:33 PM

在laravel中,fill方法是一个给Eloquent实例赋值属性的方法,该方法可以理解为用于过滤前端传输过来的与模型中对应的多余字段;当调用该方法时,会先去检测当前Model的状态,根据fillable数组的设置,Model会处于不同的状态。

laravel路由文件在哪个目录里laravel路由文件在哪个目录里Apr 28, 2022 pm 01:07 PM

laravel路由文件在“routes”目录里。Laravel中所有的路由文件定义在routes目录下,它里面的内容会自动被框架加载;该目录下默认有四个路由文件用于给不同的入口使用:web.php、api.php、console.php等。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器