Laravel Sail 是一个与 Laravel 默认 Docker 开发环境进行交互的轻量级命令行界面。Sail 为使用 PHP、MySQL、Redis 构建 Laravel 应用提供了很好的起点,不需要有任何 Docker 经验就可以轻松上手。
Sail 的核心是在 Laravel 项目根目录下提供 docker-compose.yml
文件(Docker Compose 编排配置文件)以及一个 sail
脚本文件,该脚本文件提供了与 docker-compose.yml
中定义的 Docker 容器进行交互的 CLI 方法。
Laravel Sail 目前支持 macOS、Linux 和 Windows(基于 WSL2)操作系统。
与非官方的 Docker 集成开发环境相比(比如 Laradock、Vessel、Lando 等),Sail 更加轻量级,与 Laravel 项目兼容性更好,对新手更加友好,对于一些演示项目、或者小项目开发,推荐使用 Laravel Sail。
在团队开发过程中,用传统的环境配置方式会经常遇到这样的问题,我使用了新的Laravel
版本需要使用PHP 8
,同事参与进来的时候发现运行不起来,他PHP
版本太低了,还抱怨你为啥使用的版本。
疫情当下,反反复复,有时用办公室的电脑,有时用自己的笔记本,运行项目可能需要的环境还不一样。新的任务有时很简单,但为了完成解决环境问题却用了很长时间,开发五分钟环境俩小时。
对于以上两个问题,使用
Laravel Sail
完全可以避免,项目一键启动,自动帮你安装好项目需要的环境,彻底从环境问题中解脱出来。
对于新手来说,有时看着文档一步步操作可能也会安装出问题,然后一通查找最后也没解决问题,然后想着重新再来一遍吧,可能是哪里出错啦。然后发现卸载也很麻烦。Mysql
,PHP
,Nginx
都需要卸载掉,还担心没有卸载干净,以至于重装系统。
使用 Laravel Sail 我们只需要在Docker 删除相应的容器,然后重启Docker,再严重点可以卸载Docekr,最后重启项目就可以啦。
使用Laravel Sail
需要掌握简单的类Linux系统的一些简单命令,对于新手来说相较于Homestead
,Laravel Sail
还是比较容易上手的。