Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门

发布时间 - 2025-12-13 00:00:00    点击率:
Laravel Sail是Laravel官方提供的基于Docker的开发环境,通过一条命令即可快速启动包含Nginx、MySQL、Redis等服务的容器化开发环境,无需本地安装PHP、Composer、Node.js等依赖。使用curl -s https://laravel.build/example-app | bash创建项目,进入目录后运行./vendor/bin/sail up启动服务,访问http://localhost即可查看应用。Sail提供sail artisan、sail composer、sail npm等命令在容器内执行操作,确保环境一致性。可通过修改docker-compose.yml文件自定义服务配置,如启用Redis、调整端口映射等,结合sail down和sail up重新生效。Sail显著降低环境配置复杂度,提升团队协作效率,适合新手和标准化项目开发。

Laravel Sail 是 Laravel 官方提供的一种轻量级、基于 Docker 的本地开发环境。它让你无需在本地安装 PHP、Composer、Node.js、数据库等开发依赖,只需安装 Docker,就能快速启动一个完整的 Laravel 开发容器环境。Sail 特别适合希望快速上手、避免环境配置麻烦的开发者。

什么是 Laravel Sail

Laravel Sail 将常用的开发服务(如 Nginx、MySQL、Redis、Mailhog 等)封装在 Docker 容器中,通过 docker-compose.yml 文件定义服务配置。你可以在命令行使用 sail 命令(本质是 Artisan 命令的封装)来启动、停止和管理这些容器。

Sail 的核心优势在于“开箱即用”:项目初始化后,运行一条命令即可拥有标准化的开发环境,避免“在我机器上能跑”的问题。

如何使用 Sail 快速启动项目

开始使用 Sail 非常简单,前提是你已安装 Docker Desktop 或 Docker Engine。

  • 创建新 Laravel 项目并启用 Sail:
    curl -s https://laravel.build/example-app | bash
  • 进入项目目录并启动容器:
    cd example-app && ./vendor/bin/sail up
  • 访问 http://localhost 即可看到 Laravel 欢迎页面

此时,你的应用运行在 Nginx 容器中,数据库连接可使用默认配置(DB_HOST=mysql),所有服务由 Docker 自动管理。

Sail 常用命令一览

Sail 提供了简洁的 CLI 接口来执行常见操作:

  • sail up:启动容器(加 -d 参数后台运行)
  • sail stop:停止容器
  • sail artisan:运行 Artisan 命令,例如 sail artisan migrate
  • sail composer:在容器内执行 Composer 命令
  • sail npm:运行 Node 相关命令,如 sail npm run dev
  • sail shell:进入应用容器的 Bash 环境

这些命令替代了本地全局安装工具的需求,所有操作都在一致的容器环境中完成。

自定义 Sail 环境

你可以根据项目需要修改 docker-compose.yml 文件来添加或调整服务。例如:

  • 启用 Redis:在 services 中取消 redis 的注释
  • 修改 MySQL 端口:更改 ports 映射避免冲突
  • 挂载额外目录:确保本地代码实时同步到容器

修改后运行 sail downsail up 重建容器即可生效。

基本上就这些。Laravel Sail 降低了新手入门门槛,也提升了团队协作时环境的一致性。不复杂但容易忽略。


# docker  # mysql  # php  # laravel  # redis  # js  # node.js  # node  # composer  # bash  # nginx  # npm  # 封装  # cURL  # 接口 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何使用withoutEvents方法临时禁用模型事件  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  Laravel storage目录权限问题_Laravel文件写入权限设置  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  如何挑选最适合建站的高性能VPS主机?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】  Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言  C语言设计一个闪闪的圣诞树  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  怎么用AI帮你为初创公司进行市场定位分析?  ,南京靠谱的征婚网站?  如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  如何打造高效商业网站?建站目的决定转化率  PHP 500报错的快速解决方法  如何快速搭建虚拟主机网站?新手必看指南  长沙企业网站制作哪家好,长沙水业集团官方网站?  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  Internet Explorer官网直接进入 IE浏览器在线体验版网址  网站建设保证美观性,需要考虑的几点问题!  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  Java类加载基本过程详细介绍  如何选择PHP开源工具快速搭建网站?  Laravel如何使用Blade组件和插槽?(Component代码示例)  Laravel如何使用Blade模板引擎?(完整语法和示例)  深圳网站制作培训,深圳哪些招聘网站比较好?  如何用好域名打造高点击率的自主建站?  简历没回改:利用AI润色让你的文字更专业  如何快速查询域名建站关键信息?  Laravel安装步骤详细教程_Laravel环境搭建指南  UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】  LinuxShell函数封装方法_脚本复用设计思路【教程】  JavaScript实现Fly Bird小游戏  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  如何快速生成高效建站系统源代码?  如何注册花生壳免费域名并搭建个人网站?  如何在IIS中新建站点并配置端口与IP地址?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  Laravel怎么调用外部API_Laravel Http Client客户端使用  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  原生JS实现图片轮播切换效果  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  开心动漫网站制作软件下载,十分开心动画为何停播?  如何快速生成专业多端适配建站电话?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置