Openclaw启动后Error: EACCES: permission denied, mkdir权限问题解决(windows)

背景条件:

1.使用docker容器安装Openclaw,正常启动。

2.启动后报权限问题,Error: EACCES: permission denied, mkdir '/d' ,主要在acpx、heartbeat出现。

解决3要点参考:配置文件2个、docker权限和用户权限不一致,主要解决的就是映射路径的正确性和映射下的docker权限一致问题。

关键配置1:用户根目录下的配置文件【~/.openclaw/openclaw.json】

复制代码
"agents": {
    "defaults": {
      "workspace": "/home/node/.openclaw/workspace",##保持现状,此为openclaw内部映射
      "sandbox": {
        "mode": "off"
      }
    }

使用如下命令测试创建文件的权限:

复制代码
$ docker compose exec openclaw-gateway sh -lc 'touch /home/node/.openclaw/workspace/1'

验证docker创建文件的权限:

  • 如果找不到文件地址,说明文件映射有问题,解决文件映射。(向下看关键配置2)
  • 如果touch权限有问题,改docker容器权限
cpp 复制代码
 sudo chown -R 1000:1000  /d/projects/openclaw-docker/openclaw/*
 sudo chmod -R u+rwX /d/projects/openclaw-docker/openclaw/*

参考原因**:**https://blog.csdn.net/weixin_42098685/article/details/158420526

关键配置2【docker-compose.yml】

openclaw在docker下的文件安装目录如:/e/project/openclaw-docker/openclaw下,看vloumes里的两个文件目录变量配置

bash 复制代码
services:
  openclaw-gateway:
    image: ${OPENCLAW_IMAGE:-openclaw:local}
    environment:
      HOME: /home/node
      TERM: xterm-256color
      OPENCLAW_GATEWAY_TOKEN: ${OPENCLAW_GATEWAY_TOKEN:-}
      OPENCLAW_ALLOW_INSECURE_PRIVATE_WS: ${OPENCLAW_ALLOW_INSECURE_PRIVATE_WS:-}
      CLAUDE_AI_SESSION_KEY: ${CLAUDE_AI_SESSION_KEY:-}
      CLAUDE_WEB_SESSION_KEY: ${CLAUDE_WEB_SESSION_KEY:-}
      CLAUDE_WEB_COOKIE: ${CLAUDE_WEB_COOKIE:-}
      TZ: ${OPENCLAW_TZ:-UTC}
    volumes:
      - /c/user/userxxxxxxxx/.openclaw/openclaw.json:/home/node/.openclaw #配置文件映射,即上方个人根目录下config,如果环境变量没配置,使用直接目录映射(配置文件目录可改)
      - /d/projects/openclaw-docker/openclaw/workspace:/home/node/.openclaw/workspace #文件目录映射,如果环境变量没配置,使用直接目录映射
      ## Uncomment the lines below to enable sandbox isolation
      ## (agents.defaults.sandbox). Requires Docker CLI in the image
      ## (build with --build-arg OPENCLAW_INSTALL_DOCKER_CLI=1) or use
      ## scripts/docker/setup.sh with OPENCLAW_SANDBOX=1 for automated setup.
      ## Set DOCKER_GID to the host's docker group GID (run: stat -c '%g' /var/run/docker.sock).
      # - /var/run/docker.sock:/var/run/docker.sock

最终解决总结:把目录改正确,把权限设置一致,docker权限一致,配置文件目录都能找到且正确,问题就解决了。记得重启容器。

相关推荐
灵动的艺术11 小时前
如一 Agent 架构解读(二十四):Agent 高效率低成本思考
人工智能·agent·如一
Xxtaoaooo12 小时前
双11避坑:我用 WorkBuddy + TextIn xParse 做了个「避坑对比台」,商品详情图丢进去,参数矛盾自动现形
人工智能·1024程序员节·textin·workbuddy·ai数据层基础设施
昵称画12 小时前
交接班记录电子化:三班之间的信息不漏
开发语言·数据库·人工智能·低代码·php
Navicat中国12 小时前
将 Navicat 的 AI 助手连接到本地 LLM
人工智能·chatgpt
“AI国潮设计-小江”13 小时前
【AIGC实战】Python+SDXL批量生成“潮汕英歌舞不倒翁”IP | 角色一致性与多场景融合方案,附完整代码
开发语言·人工智能·python·prompt·aigc
点PY13 小时前
WeDetect论文精读
人工智能
CCC:CarCrazeCurator13 小时前
稀疏奖励 vs 稠密奖励:强化学习中的反馈带宽权衡
人工智能·深度学习·机器人
骑着蜗牛撵大象32713 小时前
语音变分录、规则挡幻觉:拆解开源 AI 记账系统 Smart Ledger 的全栈设计
人工智能·ai·架构·js·数据校验
墨染天姬13 小时前
[AI]Cursor Subagent 机制详解
人工智能
数睿数据无代码开发13 小时前
企业AI落地从高价值场景开始|数睿数据《AI应用场景集》正式发布
人工智能