OpenClaw本地Docker安装部署+自定义配置国内大模型

目录

一、源码Docker镜像部署

1.第一步:安装Node.js

2.第二步:配置环境变量

3.第三步:构建镜像

4.第四步:初始化openclaw配置

5.第五步:启动容器

二、配置国内模型API

1.方法一:交互式配置

[2.方法二:openclaw CLI 命令工具](#2.方法二:openclaw CLI 命令工具)

3.方法三:直接修改配置文件

阶段性完结


一、源码Docker镜像部署

github地址:https://github.com/openclaw/openclaw

下载源码到本地。

1.第一步:安装Node.js

安装地址:https://nodejs.org/zh-cn

2.第二步:配置环境变量

复制示例环境文件,也可以直接创建一个空的.env文件

复制代码
copy .env.example .env

解释几个需要填写参数:

OPENCLAW_GATEWAY_TOKEN:访问 Gateway 的认证密钥(关键核心配置)。Gateway 启动后会暴露 WebSocket 和 HTTP 接口,没有这个 token 任何人都能连进来。相当于你家门的钥匙,必须设置。

OPENCLAW_CONFIG_DIR:OpenClaw 存放配置文件(后续可修改模型配置)(openclaw.json、频道凭证、身份信息等)的目录。Docker 容器通过 volume 挂载这个目录,这样容器重启后配置不会丢失。

OPENCLAW_WORKSPACE_DIR: Agent 的工作目录(后续可查看agent操作文件),它在这里读写文件、执行任务。

OPENCLAW_GATEWAY_PORT:Gateway 监听的端口,默认 18789。

**OPENCLAW_GATEWAY_BIND:决定 Gateway 监听哪个网卡。**loopback = 只有本机能访问(127.0.0.1),但 Docker bridge 网络下宿主机也访问不到;lan = 监听所有网卡(0.0.0.0),宿主机和局域网都能访问,Docker 部署必须用这个。

复制代码
# .env文件内容
OPENCLAW_GATEWAY_TOKEN=xxxxxxxxx  # 需自定义修改(类似账户密码)
OPENCLAW_CONFIG_DIR=X:xxx/openclaw   # 本地创建一个文件夹,填写绝对路径
OPENCLAW_WORKSPACE_DIR=X:xxx/openclaw/workspace  # 本地创建一个文件夹,填写绝对路径
OPENCLAW_GATEWAY_PORT=18789
OPENCLAW_GATEWAY_BIND=lan

OPENCLAW_GATEWAY_TOKEN随机生成指令方式:

复制代码
# Powershell方式
-join ((1..32) | ForEach-Object { '{0:x2}' -f (Get-Random -Max 256) })

# Python方式
python -c "import secrets; print(secrets.token_hex(32))"

复制打印的字符串token即可。

3.第三步:构建镜像

配置docker中镜像源加速

复制代码
# docker配置镜像源
{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": false,
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://dockerproxy.com",
    "https://hub-mirror.c.163.com"
  ]
}

源码路径下cmd,使用构建指令,耐心等待镜像构建完成。

复制代码
docker build -t openclaw:local .

完成后可以看到docker镜像images中新添内容

4.第四步:初始化openclaw配置

使用以下指令进入docker容器内部openclaw安装初始化

复制代码
docker compose run --rm openclaw-cli onboard --mode local --no-install-daemon

选择Yes

QuickStart。先跑起来,后续可以随时用 openclaw configure 补充配置;Manual 模式会逐项填写所有配置项,比较繁琐

模型服务商选择, 先跳过Skip for now ,后期自己配置。

模型平台的 API key。还没有任何 API key,选 All providers先跳过,后面再配。

默认选择模型。第一个就好,后期可自行设置

这一步是选择想通过哪个聊天平台来使用 AI 助手。

比如选 Feishu/Lark (飞书),配置好认证 token 之后,你就可以直接在 Feishu/Lark (飞书) 里跟 AI 对话;选 Twitch 就在 Twitch 里对话,以此类推。

Skip for now跳过,后续有需求再配。

下面选项是给 AI 助手配置联网搜索能力。

配置平台 API key 之后,在跟 AI 对话时它可以主动去搜索最新信息,比如"帮我查一下今天的新闻"、"搜索某个技术文档"之类的。

没有对应平台的 API key 的话,选 Skip for now 跳过,不影响基本使用,AI 还是能正常对话,只是没有联网搜索功能。

下一个Skills 是给 AI 助手扩展能力的插件,比如读取文件、执行代码、操作浏览器等工具能力。

No跳过就行,先把基础跑通,Skills 后面有需要再单独配置。安装skills需谨慎,以防投毒风险。

Hooks 是自动化触发器,当特定事件发生时自动执行某些操作。

几个选项的含义:

boot-md --- 每次 agent 启动时自动加载一个 markdown 文件作为上下文

bootstrap-extra-files --- 启动时自动注入额外的文件到 agent 上下文

command-logger --- 记录所有命令日志

session-memory --- 执行 /new 或 /reset 重置会话时,自动把当前会话内容保存到记忆里,下次还能记住

现在先选Skip for now跳过,把主流程跑通再说。

5.第五步:启动容器

先设置运行访问来源地址

复制代码
docker compose run --rm openclaw-cli config set gateway.controlUi.allowedOrigins "[\"http://localhost:18789\"]" --strict-json

使用命令直接启动

复制代码
docker compose up -d openclaw-gateway

启动后,网页访问 http://localhost:18789 (.env文件中配置的本地端口)

ci'hc输入.env文件中配置的OPENCLAW_GATEWAY_TOKEN即可登录。

此时还不能登录,需要后台允许设备访问。

**(关键步骤)**继续需要配置允许设备访问:

下面指令查看已配对的设备

复制代码
docker compose run --rm openclaw-cli devices list

下面指令修改最后的设备id为上述查询到的Pending Request下的字符串

复制代码
docker compose run --rm openclaw-cli devices approve xxxxxx  # 修改xxxxx为实际设备id

修改成功后,可正常登录到使用界面

二、配置国内模型API

回顾第二步配置环境文件.env中的两个参数OPENCLAW_CONFIG_DIR、OPENCLAW_WORKSPACE_DIR,这两个配置的本机路径,就是映射到docker容器中的相关文件了。

可以直接在windows系统下,到配置的本机目录下找到 openclaw 配置文件 openclaw.json 进行文本修改,无需进入容器的bash交互麻烦。

配置自定义的外部模型API:

1.方法一:交互式配置

如果还不熟悉 openclaw,可以使用其提供的命令行CLI工具进行自动化配置。

复制代码
# 交互式配置模型
docker compose run --rm openclaw-cli models auth login

实际就是重新进入第四步安装界面进行配置

2.方法二:openclaw CLI 命令工具

直接用 config set 命令逐项写入

复制代码
# 设置 provider 配置(base URL + API key + 模型定义)
docker compose run --rm openclaw-cli config set models.providers.my-provider "{\"baseUrl\":\"https://dashscope.aliyuncs.com/compatible-mode/v1\",\"api\":\"openai-completions\",\"apiKey\":\"sk-你的key\",\"models\":[{\"id\":\"qwen-plus\",\"name\":\"qwen-plus\",\"reasoning\":false,\"input\":[\"text\"],\"contextWindow\":128000,\"maxTokens\":4096,\"cost\":{\"input\":0,\"output\":0,\"cacheRead\":0,\"cacheWrite\":0}}]}" --strict-json

# 设置默认模型
docker compose run --rm openclaw-cli models set "my-provider/qwen-plus"

3.方法三:直接修改配置文件

熟悉的话,可以直接在本地docker映射的目录下,找到openclaw.json文件直接修改。但是修改完之后要重新 docker 以生效

复制代码
# 修改配置完之后运行
docker compose restart openclaw-gateway

"models": {
    "providers": {
      "my-provider": {
        "baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1",
        "apiKey": "sk-xxxxx",
        "api": "openai-completions",
        "models": [
          {
            "id": "qwen-plus",
            "name": "qwen-plus",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 128000,
            "maxTokens": 4096
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "my-provider/qwen-plus"
      },
      "models": {
        "my-provider/qwen-plus": {}
      },
      "workspace": "/home/node/.openclaw/workspace"
    }
  },

阶段性完结

上述任一方法配置完模型后,再次访问http://localhost:18789 ,就可以正常对话了。

后续继续发布使用openclaw基础功能、openclaw插件安装、skills使用、3D可视化Agent工作......

相关推荐
逄逄不是胖胖1 小时前
《动手学深度学习》-69BERT预训练实现
人工智能·深度学习
LSssT.1 小时前
【02】线性回归:机器学习的入门第一课
人工智能·机器学习·线性回归
多年小白1 小时前
今日AI科技简报(2026年3月18日)
人工智能·科技
轮到我狗叫了2 小时前
GAN初次阅读
人工智能·神经网络·生成对抗网络
一只土卜皿2 小时前
列线图/诺莫图 含概率轴
人工智能
造夢先森2 小时前
【白话神经网络(三)】从Transformer到XXX
人工智能·神经网络·transformer
研究点啥好呢2 小时前
3月22日GitHub热门项目推荐|网页浏览,何须手动
人工智能·python·开源·github
zl_vslam2 小时前
SLAM中的非线性优-3D图优化之相对位姿Between Factor-四元数(十二)
人工智能·算法·计算机视觉
知行产研2 小时前
神宝能源:启动国内首个极寒工况5G+无人驾驶项目
人工智能·自动驾驶