You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Sail项目中Envoy无法运行的问题求助

Laravel Sail + Envoy 启动失败问题排查

核心原因:Sail命令解析优先级冲突

当你执行sail envoy ...这类命令时,Sail会把envoy识别为Docker Compose的服务名或参数,而非传递给容器内的PHP环境去执行Envoy脚本,所以直接输出了Docker Compose的帮助选项列表,根本没触发Envoy的启动流程。

可行解决方案

  • 方法1:用sail exec明确指定容器执行Envoy
    直接指定在PHP容器内运行Envoy命令,避免Sail的命令解析干扰:

    sail exec laravel.test php vendor/bin/envoy run envoy-task
    

    注:laravel.test是Sail默认的PHP服务容器名,若你自定义过容器名称,替换成对应值即可。

  • 方法2:添加Sail命令别名简化操作
    在项目根目录的.env文件中添加自定义命令别名:

    SAIL_COMMAND_ALIASES=envoy="php vendor/bin/envoy"
    

    保存后重启Sail容器使配置生效:

    sail down && sail up -d
    

    之后就能直接用sail envoy run envoy-task执行任务了。

  • 方法3:宿主机直接执行(若本地已装适配PHP)
    如果你的本地宿主机已经安装了符合项目版本要求的PHP,可跳过Sail直接在项目根目录执行:

    php vendor/bin/envoy run envoy-task
    

额外检查项

  • 确认Envoy.blade.php文件确实在项目根目录,且语法无错误(语法问题会导致Envoy加载失败)。
  • 验证Envoy安装状态:进入容器执行sail exec laravel.test composer show laravel/envoy,确认包已正确安装。

内容的提问来源于stack exchange,提问作者Tamás László

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 10:42:03