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

Docker开发环境构建GitHub仓库时遇EPERM权限错误求助

解决Docker开发环境中Yarn Berry构建的EPERM权限错误

报错信息

➤ YN0001: │ Error: esbuild-linux-arm64@npm:0.14.54: EPERM: operation not permitted, copyfile '/root/.yarn/berry/cache/esbuild-linux-arm64-npm-0.14.54-494e5f1b94-8.zip' -> '/com.docker.devenvironments.code/.yarn/cache/esbuild-linux-arm64-npm-0.14.54-494e5f1b94-8.zip-5d136c97b7bea2c4.tmp'

可行解决方案

1. 对齐容器与本地用户权限

Docker挂载目录/com.docker.devenvironments.code的权限冲突是常见原因,启动容器时指定与本地主机一致的UID/GID:

docker run -v /本地项目路径:/com.docker.devenvironments.code --user $(id -u):$(id -g) 你的镜像名

此操作让容器内用户拥有本地目录的操作权限,避免跨用户权限限制。

2. 重置Yarn缓存与目录权限

缓存目录权限异常可能导致拷贝失败,执行以下步骤重置:

# 删除项目内的缓存目录
rm -rf /com.docker.devenvironments.code/.yarn/cache
# 清理全局缓存
yarn cache clean
# 重新安装依赖
yarn install

也可以指定Yarn使用容器内临时目录作为缓存,绕挂载目录权限问题:

yarn config set cache-folder /tmp/yarn-cache
yarn install

3. 调整Docker Desktop文件共享设置(仅Mac/Windows)

如果使用Docker Desktop,检查以下设置:

  • 打开Docker Desktop设置 → 资源 → 文件共享,确认本地项目目录已在共享列表中
  • 重启Docker Desktop,确保文件共享权限生效

4. 禁用Yarn硬链接优化

Yarn Berry默认的硬链接模式在Docker挂载卷中可能触发权限问题,在项目根目录的.yarnrc.yml中添加:

enableHardlinks: false

保存后重新执行yarn install,强制Yarn使用普通拷贝模式。


内容的提问来源于stack exchange,提问作者You Know Ball

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 16:40:41