首页/新闻资讯/正文详情

OpenClaw Linux 部署手册:常规安装、Docker 与 Docker Compose 接入 TaoToken 配置指南

发布时间:2026/9/26 17:40:22 来源:云帆数科 栏目:资讯中心
OpenClaw Linux 部署手册:常规安装、Docker 与 Docker Compose 接入 TaoToken 配置指南
1. 为什么要在 Linux 上折腾 OpenClaw 的三种部署方式OpenClaw 是一个 AI Agent Gateway简单说就是把你常用的聊天渠道、CLI 工具、Control UI 统一接到一个常驻服务上再由它去调用背后的模型。它支持 CLI、常驻 Gateway、Control UI 和多渠道接入Linux 是官方推荐的生产部署平台。很多人第一次接触会卡在同一个地方装是装上了但模型通道没接对Gateway 起来了却调不通模型。这篇就聚焦 OpenClaw 在 Linux 上的三条部署路径——常规安装、Docker、Docker Compose重点演示怎么通过统一 Key/API 通道 TaoToken 完成模型接入。我会给出可复制的 config.toml 与 settings.json 骨架、Docker Compose 环境变量片段以及容器内连通性验证和日志排查动作。适合已经有一台 Linux 机器、想跑一个稳定 Agent Gateway 的开发者也适合在 VPS 上做隔离部署的运维同学。三种方式各有取舍常规安装上手最快Docker 适合不想污染宿主机环境Docker Compose 是官方推荐的生产方式。下面按顺序来每一步都给验收命令。2. 接入前的准备TaoToken 统一 Key 与 API 通道在动 OpenClaw 之前先把模型通道准备好。TaoToken 提供统一的 Key/API 通道你只需要一个 API Key 和一个 Base URL就能在 OpenClaw 里配置模型调用不用为每个模型单独维护一套凭证。你需要拿到两样东西API Key 和 API 地址。API 地址是https://taotoken.net/apiKey 在控制台创建。创建入口在这里控制台https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentconsoleAPI Keys 管理https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentapi-keys注意API 地址不要带 UTM 参数直接写https://taotoken.net/api即可带参数的地址是给页面跳转用的接口调用会失败。拿到 Key 之后先别急着配 OpenClaw用 curl 验证一下通道本身是通的curl -fsS https://taotoken.net/api/v1/models \ -H Authorization: Bearer $TAOTOKEN_API_KEY如果返回模型列表说明 Key 和通道都没问题。这一步很关键因为后面 OpenClaw 报错时你要能区分是通道问题还是 OpenClaw 配置问题。我试过先跳过这步结果在容器里排查了半天最后发现是 Key 复制时多了个空格。3. 方式一常规安装并接入 TaoToken常规安装适合个人本机或开发机依赖 Node.js 24推荐或 22.19内存至少 1 GB。默认端口 Gateway 是 18789Bridge 是 18790。3.1 一键安装脚本curl -fsSL https://openclaw.ai/install.sh | bash如果你想跳过交互式 onboarding直接加参数curl -fsSL https://openclaw.ai/install.sh | bash -s -- --no-onboard如果不想依赖系统 Node可以用本地 prefix 安装OpenClaw 和 Node 都会装到~/.openclaw前缀下curl -fsSL https://openclaw.ai/install-cli.sh | bashnpm 全局安装也可以npm install -g openclawlatest openclaw onboard --install-daemon3.2 配置守护进程openclaw onboard --install-daemon在 Linux/WSL2 上这会创建 systemd user service实现 Gateway 开机自启。装完之后验证一下openclaw --version openclaw doctor openclaw gateway status curl -fsS http://127.0.0.1:18789/healthz浏览器打开http://127.0.0.1:18789/在 Settings 里粘贴 Gateway Token 就能进 Control UI。3.3 config.toml 接入 TaoToken 骨架OpenClaw 的模型通道配置放在配置目录下。常规安装的配置目录通常是~/.openclaw。下面是一个可复制的config.toml骨架把模型指向 TaoToken[gateway] mode local bind lan port 18789 [gateway.controlUi] allowedOrigins [http://localhost:18789, http://127.0.0.1:18789] [models] provider openai-compatible baseUrl https://taotoken.net/api apiKey ${TAOTOKEN_API_KEY} defaultModel gpt-4o-mini [models.params] timeout 60 maxRetries 2这里provider用openai-compatible因为 TaoToken 的接口是 OpenAI 兼容格式。apiKey用环境变量引用避免把 Key 写死在文件里。defaultModel换成你在控制台确认可用的模型名。3.4 settings.json 骨架有些版本或渠道配置会读settings.json骨架如下{ gateway: { mode: local, bind: lan, port: 18789 }, models: { provider: openai-compatible, baseUrl: https://taotoken.net/api, apiKeyEnv: TAOTOKEN_API_KEY, defaultModel: gpt-4o-mini }, channels: { telegram: { enabled: false } } }把TAOTOKEN_API_KEY写进你的 shell 环境或 systemd service 的 Environment 里export TAOTOKEN_API_KEY你的Key如果是 systemd user service编辑~/.config/systemd/user/openclaw-gateway.service在[Service]段加一行EnvironmentTAOTOKEN_API_KEY你的Key然后systemctl --user daemon-reload systemctl --user restart openclaw-gateway。3.5 验证模型调用配置改完后重启 Gateway然后发一个测试请求curl -fsS http://127.0.0.1:18789/v1/chat/completions \ -H Content-Type: application/json \ -H Authorization: Bearer $OPENCLAW_GATEWAY_TOKEN \ -d { model: gpt-4o-mini, messages: [{role: user, content: ping}] }返回里有choices字段就说明 OpenClaw 已经通过 TaoToken 调通了模型。如果返回 401先检查 Gateway Token如果返回模型不存在检查defaultModel是否和控制台一致。4. 方式二Docker 部署并接入 TaoTokenDocker 部署适合不想污染宿主机环境或者在 VPS 上做隔离运行的场景。前置条件是 Docker Engine Compose v2本地构建镜像建议内存 ≥ 2 GB。4.1 确认环境docker --version docker compose version4.2 使用官方 setup 脚本git clone https://github.com/openclaw/openclaw.git cd openclaw ./scripts/docker/setup.sh小内存 VPS 推荐直接用预构建镜像避免构建时 OOMexport OPENCLAW_IMAGEghcr.io/openclaw/openclaw:latest ./scripts/docker/setup.sh脚本会自动构建或拉取镜像、交互式 onboarding、生成.env和 Gateway Token并通过 Docker Compose 启动 Gateway。4.3 手动 Docker 流程如果你想自己控制每一步docker build -t openclaw:local -f Dockerfile . docker compose run --rm --no-deps --entrypoint node openclaw-gateway \ dist/index.js onboard --mode local --no-install-daemon docker compose run --rm --no-deps --entrypoint node openclaw-gateway \ dist/index.js config set --batch-json [{path:gateway.mode,value:local},{path:gateway.bind,value:lan},{path:gateway.controlUi.allowedOrigins,value:[http://localhost:18789,http://127.0.0.1:18789]}] docker compose up -d openclaw-gateway4.4 容器内注入 TaoToken 环境变量Docker 部署时模型 Key 通过环境变量注入。编辑.env文件加上TAOTOKEN_API_KEY你的Key OPENCLAW_GATEWAY_TOKEN你的GatewayToken OPENCLAW_IMAGEghcr.io/openclaw/openclaw:latest然后在docker-compose.yml的openclaw-gateway服务里引用services: openclaw-gateway: image: ${OPENCLAW_IMAGE:-openclaw:local} environment: HOME: /home/node OPENCLAW_GATEWAY_TOKEN: ${OPENCLAW_GATEWAY_TOKEN} TAOTOKEN_API_KEY: ${TAOTOKEN_API_KEY} volumes: - ${OPENCLAW_CONFIG_DIR:-~/.openclaw}:/home/node/.openclaw - ${OPENCLAW_WORKSPACE_DIR:-~/.openclaw/workspace}:/home/node/.openclaw/workspace ports: - ${OPENCLAW_GATEWAY_PORT:-18789}:18789 - ${OPENCLAW_BRIDGE_PORT:-18790}:18790 restart: unless-stopped command: [node, dist/index.js, gateway, --bind, lan, --port, 18789]4.5 容器内连通性验证容器起来后先进容器确认环境变量和网络都正常docker compose exec openclaw-gateway sh -c echo $TAOTOKEN_API_KEY | head -c 8 docker compose exec openclaw-gateway sh -c curl -fsS https://taotoken.net/api/v1/models -H Authorization: Bearer $TAOTOKEN_API_KEY第一条确认 Key 注入成功只打印前 8 位避免泄露第二条确认容器内能访问 TaoToken。如果第二条失败先检查容器 DNS 和出网策略。健康检查curl -fsS http://127.0.0.1:18789/healthz curl -fsS http://127.0.0.1:18789/readyz4.6 日志排查docker compose logs -f openclaw-gateway重点看有没有ECONNREFUSED、401、model not found这类关键字。ECONNREFUSED通常是容器网络问题401是 Key 问题model not found是模型名写错。5. 方式三Docker Compose 生产部署与 TaoToken 配置Docker Compose 是官方推荐的生产方式。官方docker-compose.yml包含两个服务openclaw-gateway常驻 Gateway对外暴露 18789/18790openclaw-cli是一次性 CLI 容器用来执行管理命令。5.1 标准 Compose 结构services: openclaw-gateway: image: ${OPENCLAW_IMAGE:-openclaw:local} environment: HOME: /home/node OPENCLAW_GATEWAY_TOKEN: ${OPENCLAW_GATEWAY_TOKEN} TAOTOKEN_API_KEY: ${TAOTOKEN_API_KEY} volumes: - ${OPENCLAW_CONFIG_DIR:-~/.openclaw}:/home/node/.openclaw - ${OPENCLAW_WORKSPACE_DIR:-~/.openclaw/workspace}:/home/node/.openclaw/workspace ports: - ${OPENCLAW_GATEWAY_PORT:-18789}:18789 - ${OPENCLAW_BRIDGE_PORT:-18790}:18790 restart: unless-stopped command: [node, dist/index.js, gateway, --bind, lan, --port, 18789] openclaw-cli: image: ${OPENCLAW_IMAGE:-openclaw:local} network_mode: service:openclaw-gateway volumes: - ${OPENCLAW_CONFIG_DIR:-~/.openclaw}:/home/node/.openclaw - ${OPENCLAW_WORKSPACE_DIR:-~/.openclaw/workspace}:/home/node/.openclaw/workspace entrypoint: [node, dist/index.js]完整文件以官方仓库docker-compose.yml为准。5.2 一键启动cd openclaw export OPENCLAW_IMAGEghcr.io/openclaw/openclaw:latest ./scripts/docker/setup.sh5.3 常用 Compose 命令docker compose up -d openclaw-gateway docker compose logs -f openclaw-gateway docker compose down docker compose run --rm openclaw-cli channels add --channel telegram --token token docker compose run --rm openclaw-cli channels login docker compose run --rm openclaw-cli devices list docker compose run --rm openclaw-cli devices approve requestId5.4 环境变量对照变量用途OPENCLAW_IMAGE使用远程预构建镜像OPENCLAW_GATEWAY_TOKENGateway 认证 TokenOPENCLAW_CONFIG_DIR配置目录挂载路径OPENCLAW_WORKSPACE_DIR工作区挂载路径OPENCLAW_SANDBOX启用 Agent Sandbox1/trueOPENCLAW_SKIP_ONBOARDING跳过交互式 onboardingTAOTOKEN_API_KEYTaoToken 统一 Key注入模型通道5.5 持久化目录与权限容器 bind-mount 以下路径替换容器后数据保留~/.openclaw存配置、openclaw.json、.env~/.openclaw/workspace是 Agent 工作区。容器以 uid 1000node运行宿主机挂载目录需要改权限sudo chown -R 1000:1000 ~/.openclaw这一步不做容器会报权限拒绝日志里能看到EACCES。5.6 启用 Agent Sandboxexport OPENCLAW_SANDBOX1 ./scripts/docker/setup.shSandbox 在独立 Docker 容器中执行 Agent 工具Gateway 仍在主容器中运行。生产环境建议开启隔离工具执行。5.7 Compose 下的模型验证docker compose exec openclaw-gateway sh -c curl -fsS http://127.0.0.1:18789/healthz docker compose exec openclaw-gateway sh -c curl -fsS https://taotoken.net/api/v1/models -H Authorization: Bearer $TAOTOKEN_API_KEY两条都通过再发一次 chat completions 请求确认端到端通了。6. 三种方式对比与选型建议维度常规安装DockerDocker Compose上手速度最快中等中等环境隔离低高高适合场景个人本机/dev单容器验证VPS/生产依赖Node.jsDocker EngineDocker Compose v2升级openclaw update拉取新镜像compose pull up如果你只是本机试玩常规安装最省事。如果要在 VPS 上长期跑直接上 Docker Compose配合 TaoToken 的环境变量注入升级和迁移都干净。Docker 单容器适合快速验证镜像能不能跑起来。7. 本篇常见错误排查7.1 构建镜像 OOMexit 1371 GB 内存 VPS 构建会失败。改用预构建镜像export OPENCLAW_IMAGEghcr.io/openclaw/openclaw:latest ./scripts/docker/setup.sh7.2 容器内访问 TaoToken 失败先在容器里测docker compose exec openclaw-gateway sh -c curl -v https://taotoken.net/api/v1/models -H Authorization: Bearer $TAOTOKEN_API_KEY如果卡在 DNS检查/etc/resolv.conf如果返回 401检查 Key 是否有多余空格或换行。7.3 模型名不匹配defaultModel必须和控制台里可用的模型名一致。写错会返回model not found。建议先用/v1/models列出可用模型再填进配置。7.4 权限拒绝 EACCES宿主机挂载目录属主不对sudo chown -R 1000:1000 ~/.openclaw7.5 Gateway Token 不匹配Control UI 进不去或 API 返回 401检查.env里的OPENCLAW_GATEWAY_TOKEN和你在 Settings 里粘贴的是否一致。改完 Token 要重启容器。7.6 端口被占用18789 或 18790 被占用时改.env里的OPENCLAW_GATEWAY_PORT和OPENCLAW_BRIDGE_PORT然后docker compose up -d重建。8. 下一步把通道和部署都固定下来部署跑通之后建议把 TaoToken 的 Key 和 OpenClaw 的 Gateway Token 都放进.env或 systemd 的 Environment不要写死在配置文件里。这样换机器、升级镜像时只需要替换环境变量。如果你还在选模型阶段可以先用模型对话页面确认哪些模型可用再填进defaultModel模型对话https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentchat如果你打算长期跑编码类 Agent或者需要更稳定的调用配额可以看 Coding PlanCoding Planhttps://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentcoding-plan接入文档里有完整的配置字段说明遇到本文没覆盖的字段可以去查接入文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentdoc最后提醒一句容器内验证连通性时先测https://taotoken.net/api/v1/models再测 OpenClaw 的/healthz两个都通过再发 chat 请求。这样出问题时能快速定位是通道层还是 Gateway 层比一上来就发对话请求省时间。

相关推荐

CSP-J1 S1 初赛 第1轮 2019-2026年参赛人数统计表
CSP-J1 S1 初赛 第1轮 2019-2026年参赛人数统计表

以下数据综合CCF官方公示、各省市赛区公开考务数据整理,统计口径为实际到场参赛人数,2026年数据为9月19日考试结束后各赛区汇总的初步统计值,最终精确值以CCF后续官方公告为准: 年份 CSP-J1 (入门级) CSP… · 2026/9/26 17:40:22

Python第六课:环境配置、虚拟环境与第一个数据可视化项目
Python第六课:环境配置、虚拟环境与第一个数据可视化项目

1. 前五课的通病:装好了Python却跑不通第一个程序1.1 版本选择:为什么我劝你装3.10以上而不是最新版很多新手学Python,前五课都顺风顺水:print("Hello World")会写了,if/else会写了,循环也能刷几… · 2026/9/26 17:40:03

多线程计时器实战:打通Java线程协作与状态控制核心
多线程计时器实战:打通Java线程协作与状态控制核心

1. 一个计时器,为什么是Thread学习最好的综合演练场做Java开发的人应该都有这种感觉:Thread这一章,单独学Thread类、Runnable接口、synchronized、wait/notify的时候,每个知识点都觉得自己懂了,可是真要把它们串在一起… · 2026/9/26 17:40:03

Qwen-Image GGUF版本地部署:ComfyUI多模态工作流实战指南
Qwen-Image GGUF版本地部署:ComfyUI多模态工作流实战指南

1. 项目概述:为什么是Qwen-Image GGUF版 ComfyUI本地运行?最近在图像生成领域,Qwen-Image这个模型越来越受关注——它不是单纯的文字转图片(text-to-image),而是能真正理解中文图文混合输入、支持“以图搜… · 2026/9/26 18:11:03

YOLO26+室内家居数据集:一条命令搞定智能家居目标检测与实例分割
YOLO26+室内家居数据集:一条命令搞定智能家居目标检测与实例分割

最近 YOLO 又搞了个大动作:官方放出一套室内家居数据集,并且把 YOLO26 的训练流程做到了“一条命令”级别。智能家居圈里这两天讨论得很热闹,原因很简单——过去做室内场景识别,最头疼的从来不是没有模型,而是没有一套… · 2026/9/26 18:11:03

公众号文章批量导出实战:wechat-article-exporter 部署与风控调优
公众号文章批量导出实战:wechat-article-exporter 部署与风控调优

1. 为什么我会盯上公众号文章批量导出这件事做内容运营或者做行业研究的人,大概都遇到过同一个尴尬:某个公众号里积累了五六年的深度文章,想系统性地读一遍、做词频分析、或者单纯留个档,结果发现只能一篇一篇手动点开、复制、粘贴… · 2026/9/26 18:11:03

FastAPI MCP 快速入门教程:用 TaoToken 统一 Key 打通本地工具链
FastAPI MCP 快速入门教程:用 TaoToken 统一 Key 打通本地工具链

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 18:11:03

2026深度实测|Work模式与Composer vibe coding迭代对比:开发者工具选型必看
2026深度实测|Work模式与Composer vibe coding迭代对比:开发者工具选型必看

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 18:11:03

AI Agent工程化实战:从LLM大脑到可上线的系统
AI Agent工程化实战:从LLM大脑到可上线的系统

1. 先搞明白:Agent和LLM到底差在哪这几年做AI落地最常被问到的一个问题,就是"你搞的AI Agent,和ChatGPT、和DeepSeek到底有什么区别?"。我习惯把答案浓缩成一句话:大模型是一个会说话的大脑,Agen… · 2026/9/26 18:10:57

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21

OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40

向下兼容与向上兼容:接口设计中的兼容性策略与工程实践
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践

一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码