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

Docker环境下Symfony Recipe更新失败:非Git仓库问题

解决Symfony Recipe更新时Git仓库找不到的问题

问题原因

Composer更新Symfony Recipe时需要执行Git命令检测仓库状态,但你的Docker容器仅将本地app目录作为工作目录挂载,本地根目录的.git仓库在容器内无法被访问到,导致Git命令执行失败。

解决方案

方案1:临时允许Git跨文件系统查找仓库

执行命令时添加环境变量,让Git可以跨文件系统向上查找仓库:

docker exec -e GIT_DISCOVERY_ACROSS_FILESYSTEM=1 app composer recipes:update

方案2:调整Docker挂载目录(长期解决)

修改docker-compose.yml,将本地根目录挂载到容器内,同时设置工作目录为app目录,确保容器能访问到上级的.git仓库:

services:
  app:
    volumes:
      - ./:/var/www/project  # 挂载本地根目录到容器内的/var/www/project
    working_dir: /var/www/project/app  # 设置工作目录为app目录

修改后重启容器,再执行原更新命令即可。

方案3:直接重新安装Recipe(最快解决)

使用错误提示中的命令,跳过补丁更新流程,直接重新安装最新版本的Recipe:

docker exec app composer recipes:install doctrine/annotations --force -v

内容的提问来源于stack exchange,提问作者Sam

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 22:27:19