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

升级Docker Desktop后Docker Compose绑定docker cli提示源路径不存在报错

问题根因

Docker Desktop for Mac v20.10+ 版本调整了默认的文件共享目录白名单,/usr/local/bin 不在默认共享列表内,Docker 底层运行的 Linux 虚拟机无法读取该路径下的软链接,因此触发挂载源不存在的报错。

排查步骤
  • 第一步:确认Docker Desktop文件共享配置
    打开Docker Desktop偏好设置(Preferences)→ Resources → File Sharing,查看列表中是否包含/usr/local/bin目录,升级后该目录大概率被移出了默认列表。
  • 第二步:验证路径访问权限
    运行测试命令docker run --rm -v /usr/local/bin/docker:/tmp/docker alpine ls /tmp/docker,如果仍然报路径不存在的错误,即可确认是文件共享配置的问题。
解决方法

方案1:添加共享目录(适配原有配置,改动最小)

  1. 打开Docker Desktop偏好设置→Resources→File Sharing,点击加号添加/usr/local/bin目录
  2. 点击Apply & Restart重启Docker Desktop
  3. 重新启动容器栈即可,原有配置不需要做任何修改。

方案2:直接挂载二进制实际路径(无需调整Docker配置)

你的软链接实际指向/Applications/Docker.app/Contents/Resources/bin/docker,而/Applications目录默认在Docker Desktop的共享列表内,直接修改.env文件里的变量即可:

DOCKER_BIN_SRC=/Applications/Docker.app/Contents/Resources/bin/docker

修改后直接重启容器即可生效。

方案3:容器内部预装Docker CLI(跨平台兼容性更好)

如果支持修改镜像,直接在镜像的Dockerfile里添加Docker CLI安装步骤,不需要再挂载宿主机的二进制,从根源避免这类宿主机路径适配问题,同时适配不同操作系统的宿主机环境。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 08:54:01