[全流程详细教程]Docker部署ClawBot, 使用GLM4.7, 接入TG Bot实现私人助理. 解决Docker Openclaw Permission Denied问题

Deploy

Clone Repo

Github Openclaw Repo: https://github.com/openclaw/openclaw.git

shell 复制代码
git clone https://github.com/openclaw/openclaw.git

修改Setup.sh脚本

如果不修改脚本, 会出现openclaw Permission Denied的情况.

详细参考 Debug 章节的 ## 无法配对机器人的内容

主要是要进行 chown -R 1000:1000 "$OPENCLAW_CONFIG_DIR" 的操作

Deploy With Sh Script

使用脚本./docker-setup.sh

该脚本会自动完成:

  1. 构建 Docker 镜像(IMAGE_NAME="${OPENCLAW_IMAGE:-openclaw:local}")
  2. 运行交互式 onboarding 向导
  3. 生成 Gateway Token 并写入 .env
  4. 启动网关服务
shell 复制代码
./docker-setup.sh

如果你好奇官方脚本做了什么, 可以点击查看一下内容:
docker-compose.yaml文件做了什么

docker-compose.yml 定义了两个服务:

openclaw-gateway (网关服务)

  • 端口: 18789 (网关), 18790 (桥接)
  • 绑定: 默认 lan (局域网可访问)
  • 重启策略: unless-stopped
  • 持久化: 配置目录和工作空间挂载到主机

openclaw-cli (CLI 服务)

  • 交互式终端 (tty: true, stdin_open: true)
  • 用于执行命令、配置通道、运行 onboarding

Check Docker Image

整个Image大小: 4.+GB

Setup

开始Setup ClawBot

Basic

接受风险, 选择快速开始模式

Choose Model

我使用的是: GLM4.7模型

感觉Lite的额度都基本够一些使用了, 我平时额度用不完, 还可以继续压榨

配置API Key

选择模型

Choose Bot API

不得不喷一下国内那些App对于Bot的适配还需要开源人自己适配, 垃圾

参考下面的# 接入Bot章节的内容接入Bot的API

Other

一些常见选项

完成Onboard配置

Web Dashboard配置

我中途不小心kill了Docker, 我使用docker compose up -d openclaw-gateway指令恢复

配置都存放在~/.openclaw/, 所以没事
检查Token(这一步不需要, URL中携带了Token)

使用cat ~/.openclaw/openclaw.json | grep token找到你需要在Web上配置的Token

修改配置文件: vim ~/.openclaw/openclaw.json

添加:

复制代码
    "controlUi": {
      "enabled": true,
      "allowInsecureAuth": true
    },

修改完之后不需要重启服务, 就可以连接成功

接入Bot

TG Bot

使用 BotFather 创建Bot

文档: https://core.telegram.org/bots

复制代码
/newbot - create a new bot

使用 \newbot 指令

复制代码
Alright, a new bot. How are we going to call it? Please choose a name for your bot.

然后会提出输入Bot的名字.

Bot名字规范: Good. Now let's choose a username for your bot. It must end in bot. Like this, for example: TetrisBot or tetris_bot.

输入了预期的Bot名字之后, 会给你Bot的认证Token

添加:

Setup ClawBot

配置Token

Pair TG Bot

复制代码
openclaw pairing approve telegram <code>

需要在容器内部执行, 这里存在一个坑

我使用 docker compose up openclaw-cli pairing approve telegram <Code> 指令解决了问题

Debug

TG Bot无法回复

被墙了

ClawBot吃Env配置代理, 但是在容器中, 我一直没有配起来

yaml 复制代码
  openclaw-gateway:
    image: ${OPENCLAW_IMAGE:-openclaw:local}
    network_mode: "host"
    environment:
      HOME: /home/node
      TERM: xterm-256color
      OPENCLAW_GATEWAY_TOKEN: ${OPENCLAW_GATEWAY_TOKEN}
      CLAUDE_AI_SESSION_KEY: ${CLAUDE_AI_SESSION_KEY}
      CLAUDE_WEB_SESSION_KEY: ${CLAUDE_WEB_SESSION_KEY}
      CLAUDE_WEB_COOKIE: ${CLAUDE_WEB_COOKIE}
      # 代理配置:现在可以直接用 127.0.0.1 了
      http_proxy: http://127.0.0.1:20171
      https_proxy: http://127.0.0.1:20171
      all_proxy: socks5h://127.0.0.1:20170
      HTTP_PROXY: http://127.0.0.1:20171
      HTTPS_PROXY: http://127.0.0.1:20171
      ALL_PROXY: socks5h://127.0.0.1:20170
      no_proxy: localhost,127.0.0.1
      NO_PROXY: localhost,127.0.0.1

无法配对机器人

参考: https://openclaw-ai.org/guides/fix-openclaw-docker-eacces-permission-denied

容器内的 node 用户(UID 1000)没有权限读写宿主机挂载进去的文件夹(通常是因为宿主机文件夹属于 root 或其他用户).

出现了 openclaw: Permission denied

fast way:

chown -R 1000:1000 "$HOME/.openclaw"

or add in docker-setup.sh:

after lines:

mkdir -p "$OPENCLAW_CONFIG_DIR"

mkdir -p "$OPENCLAW_WORKSPACE_DIR"

chown -R 1000:1000 "$OPENCLAW_CONFIG_DIR"

复制代码
diff --git a/docker-setup.sh b/docker-setup.sh
index 89b8346a3..089a52b4e 100755
--- a/docker-setup.sh
+++ b/docker-setup.sh
@@ -27,6 +27,8 @@ OPENCLAW_WORKSPACE_DIR="${OPENCLAW_WORKSPACE_DIR:-$HOME/.openclaw/workspace}"
 mkdir -p "$OPENCLAW_CONFIG_DIR"
 mkdir -p "$OPENCLAW_WORKSPACE_DIR"

+chown -R 1000:1000 "$OPENCLAW_CONFIG_DIR"
+
 export OPENCLAW_CONFIG_DIR
 export OPENCLAW_WORKSPACE_DIR
 export OPENCLAW_GATEWAY_PORT="${OPENCLAW_GATEWAY_PORT:-18789}"

参考

知乎 Docker部署Openclaw: https://zhuanlan.zhihu.com/p/2002144306304140149

Github ClawBot安装指南: https://github.com/xianyu110/clawbot

相关推荐
穷人小水滴3 分钟前
使用 WebRTC 实现局域网投屏: PC (GNOME ArchLinux) -> 平板 (Android)
android·linux·webrtc·浏览器·js·gnome·投屏
恋红尘5 分钟前
K8S 控制器-资源调度-叩丁狼
linux·docker·kubernetes
weixin_537590456 分钟前
《C程序设计语言》练习答案(练习1-7)
linux·c语言·算法
草梅友仁8 分钟前
墨梅博客 1.10.0 发布与 AI 编程工作流优化 | 2026 年第 12 周草梅周报
开源·github·ai编程
123过去2 小时前
ike-scan使用教程
linux·测试工具
badhope7 小时前
Mobile-Skills:移动端技能可视化的创新实践
开发语言·人工智能·git·智能手机·github
knqiufan8 小时前
PingCraft:从需求文档到可追踪工作项的 Agent 实践之路
ai·llm·agent·pingcode
疯狂吧小飞牛8 小时前
GPG基础指令
linux·服务器·网络
C++ 老炮儿的技术栈8 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
hjxu20169 小时前
【OpenClaw 龙虾养成笔记一】在远程服务器,使用Docker安装OpenClaw
服务器·笔记·docker