ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

OpenClaw腾讯云部署教程:从零搭建7×24小时在线的AI智能体

OpenClaw腾讯云部署教程:从零搭建7×24小时在线的AI智能体 我最早接触 OpenClaw是被它的“文档即配置”思路吸引的。那会儿市面上的 AI 智能体框架要么太重要么绑定某个厂商想换模型都不方便。OpenClaw 的思路很直接用 Markdown 写清楚角色设定、目标、可用工具剩下的交给运行时去调度。部署到腾讯云之后它就是 7×24 小时在线的一位“数字员工”能定时跑任务、处理信息、调用各种工具我半夜把需求发过去早上起来结果已经放在工作区里了。如果你是第一次听说 OpenClaw想找一份从零开始的云端部署教程或者已经在本地跑过但想搬到云上长期运行这篇内容应该能帮你少踩不少坑。1. 先搞清楚 OpenClaw 到底是什么以及为什么非得上云1.1 OpenClaw 的定位不是聊天机器人是智能体运行时很多人第一次看到 OpenClaw 会下意识觉得这不就是个聊天机器人吗其实两者差异很大。聊天机器人是“你问一句、它答一句”核心是对话能力而 OpenClaw 这类智能体运行时更关注“你给它一个目标它自己去拆解步骤、调用工具、完成任务”。比如你可以告诉它“每天下午三点检查某个网页的更新有变化就整理成摘要发到邮箱”它会自己规划要访问哪个网址、读取哪些内容、调用哪个邮件接口然后像个实习生一样把任务闭环跑完。它设计上的亮点在于所有配置都是普通文本文件。主配置是openclaw.json角色和行为规则可以用 Markdown 文档来写再配上 workspace 工作目录和 skills 技能目录。没有复杂的可视化编排界面也没有独占的 SDK这让它很容易融入 Git 工作流改配置就是改文件回滚也方便。我自己的体会是写配置文件就像在给 AI 写一本“岗位说明书”规则清楚它执行起来就越靠谱。1.2 为什么推荐部署到腾讯云而不是只跑在本地OpenClaw 在本地跑当然没问题但有几个场景会把你逼到云上长任务和定时任务需要机器不关机。本地笔记本一合盖任务就断。腾讯云服务器放在机房24 小时在线定时任务到点就执行。统一入口多设备访问。云端部署后你在公司电脑、家里台式机、手机终端上访问的都是同一个实例配置和工作区数据是共享的。网络出口更稳定。云服务器的公网 IP 固定如果要调用外部 API、接收 webhook 回调比家里宽带的动态 IP 靠谱得多。算力和存储可以弹性扩。后期如果跑多模型、多智能体或者要处理大量文件直接升配就行不用换电脑。说句实在话如果你只是图新鲜体验一下本地装一个尝尝鲜没问题但是真想让 OpenClaw 变成一个日常依赖的生产力工具从一开始就部署在云上省去后面迁移的麻烦。这就是我写这篇教程的原因把腾讯云部署的完整链路走一遍让你照着操作就能搭起来。2. 部署前准备腾讯云服务器选型与基础环境2.1 服务器选型2 核 4G 起步轻量应用服务器对新手更友好腾讯云上能跑 OpenClaw 的产品有两种轻量应用服务器和云服务器 CVM。如果只是个人使用、跑智能体任务轻量应用服务器性价比更高购买流程简单自带固定公网 IP控制台界面也清爽。CVM 适合有网络规划需求、后期要搭集群或者挂负载均衡的场景新手没必要一上来就选它。配置方面我建议2 核 4G 内存起步。OpenClaw 本体确实不重但你要留出 Docker、日志采集、可能运行的本地模型服务这些余量。我见过有人用 1 核 2G 跑能启动但一旦同时处理多个任务就明显卡顿。如果你的任务里包含本地小模型推理直接上 4 核 8G省得后面升配折腾。操作系统选Ubuntu 22.04 LTS或者Debian 12都行这两个系统稳定、软件源新Docker 支持也最好。腾讯云控制台创建服务器时直接选镜像就行系统盘建议 50G 以上OpenClaw 的 workspace 和 skills 会随使用时间积累大量文件预留空间不会错。注意购买时记得设置一个你记得住的 root 密码同时建议绑定密钥对。密钥登录比密码登录安全一个量级后面我也会专门讲安全加固。2.2 登录服务器后先做基础更新再装 Docker服务器到手之后先用 SSH 登录Windows 可以用终端直接ssh root你的公网IPmacOS/Linux 同理。进去之后第一件事是更新软件源apt update apt upgrade -y这一步会把系统自带的软件包升到最新避免后续安装 Docker 时出现依赖冲突。然后安装 Docker 和 Docker Compose 插件。虽然腾讯云控制台有自带 Docker 镜像的快捷部署但我更推荐手动装版本可控、路径统一# 安装 Docker 依赖 apt install -y ca-certificates curl gnupg lsb-release # 添加 Docker 官方 GPG 密钥和软件源 install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg chmod ar /etc/apt/keyrings/docker.gpg echo \ deb [arch$(dpkg --print-architecture) signed-by/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable | tee /etc/apt/sources.list.d/docker.list /dev/null # 安装 Docker apt update apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin # 验证安装 docker version看到 Client 和 Server 版本信息都输出出来就说明 Docker 装好了。如果你发现docker命令需要sudo才能执行那只是当前用户没加入 docker 用户组把用户加进去重新登录即可usermod -aG docker $USERDocker 装好后再顺便确认一下docker compose version能正常输出版本号。Ubuntu 22.04 用 Docker 官方软件源装的 compose 插件和 Ubuntu 自带的旧版docker-compose不一样新版是docker compose命令中间有空格别用混了。2.3 域名申请与 DNS 解析给 OpenClaw 一个正经入口如果你只是测试用服务器公网 IP 加端口也能访问。但 OpenClaw 这种需要长期使用的服务我强烈建议配一个域名理由只有一个HTTPS 证书需要域名。没有 HTTPS浏览器访问时会一屏警告部分 AI 接口也不允许从非 HTTPS 页面发起请求。域名可以在腾讯云 DNSPod 直接注册也不贵。如果你已经有了域名比如example.com那就只需要加一条解析记录。登录腾讯云控制台找到“DNSPod 解析管理”添加记录主机记录填openclaw记录类型A记录值你的腾讯云服务器公网 IPTTL默认 600 秒即可这样解析生效后openclaw.example.com就会指向你的服务器。解析生效速度一般几分钟到十分钟不等可以用ping openclaw.example.com或者dig命令确认 IP 是否已经匹配。如果暂时不想注册新域名腾讯云还提供“二级域名”概念的延伸用法你可以在已有的主域名下任意创建子域名本质就是我上面说的加一条 A 记录。很多人说“腾讯云怎么申请二级域名”其实就是这个操作不需要额外付费解析到一个 IP 而已。3. 核心实操在腾讯云上一步步把 OpenClaw 跑起来3.1 创建项目目录规划数据挂载位置OpenClaw 部署最怕的是容器一删配置和产出全没了。解决办法从一开始就把数据目录挂载到宿主机。我习惯在/opt/openclaw下面建目录结构清晰备份也方便mkdir -p /opt/openclaw/data cd /opt/openclaw其中/opt/openclaw/data会挂载进容器内的~/.openclaw用来存主配置、workspace、skills、日志和审批记录。这样就算容器出了故障数据文件也留在宿主机上重新拉一个容器挂回去就能恢复。3.2 编写 docker-compose.yml推荐用 Compose 而不是裸 docker run很多教程会让你直接docker run一条命令跑起来省事是省事但后续改端口、加环境变量、换镜像版本都要翻历史命令记录太反人类。用 Docker Compose 的好处是把所有配置写进一个文件改动有迹可循迁移也只是复制文件过去。我用的docker-compose.yml大致长这样services: openclaw: image: ghcr.io/openclaw/openclaw:latest container_name: openclaw restart: unless-stopped ports: - 8080:8080 environment: # 按你实际使用的模型服务填写 - OPENAI_API_KEYsk-xxxxxxxxxxxxxxxx # - ANTHROPIC_API_KEYsk-ant-xxxxxxxx # 如果要走兼容接口或本地模型可以显式指定 base_url # - OPENAI_BASE_URLhttp://host.docker.internal:11434/v1 volumes: - /opt/openclaw/data:/root/.openclaw extra_hosts: - host.docker.internal:host-gateway这个文件里有几个关键点要说清楚镜像名ghcr.io/openclaw/openclaw:latest以官方仓库实际发布名为准部署前先看官方 README别拉错镜像。restart: unless-stopped保证服务器重启后容器自动拉起这是云上长期运行的核心配置。端口映射8080:8080让宿主机的 8080 端口指向容器内的 8080后续反代也走这个端口。volumes把宿主机目录挂载到容器内的~/.openclawOpenClaw 默认把配置、工作区、审批文件都放在这个目录。extra_hosts这一段是给容器访问宿主机用的如果你要在 OpenClaw 里接宿主机上的 Ollama 或其他本地服务这句就有用了。写好后先别急着启动。我先用docker compose config检查一下配置文件语法确认没问题再启动cd /opt/openclaw docker compose config这个命令会把你写的 Compose 文件渲染成完整配置打印出来如果有 YAML 语法错误会直接报错比启动时再排查省心。3.3 首次启动与初始化配置openclaw.json 是核心中的核心执行docker compose up -d启动容器然后看启动日志docker compose logs -f第一次启动时OpenClaw 会在挂载目录/opt/openclaw/data下生成默认配置和目录结构。大概几分钟后你会看到类似“server listening on 8080”的日志说明基础服务已经起来了。这时打开目录看结构rootVM:/opt/openclaw# ls -la data/ total 16 drwxr-xr-x 4 root root 4096 ... drwxr-xr-x 2 root root 4096 ... -rw-r--r-- 1 root root 4096 ... openclaw.json drwxr-xr-x 2 root root 4096 ... workspace drwxr-xr-x 2 root root 4096 ... skills接下来就要编辑openclaw.json。这个文件负责告诉 OpenClaw你要接哪个模型、用谁家的 API、默认行为是什么。一个最简配置大概是这样{ models: { default: { provider: openai, model: gpt-4o-mini, apiKeyEnvVar: OPENAI_API_KEY } }, skills: { enabled: true, paths: [/root/.openclaw/skills] }, workspace: { path: /root/.openclaw/workspace } }不同版本的字段名可能有差异但这个文件的核心逻辑不会变告诉 OpenClaw 用哪个模型、去哪里加载技能、工作目录在哪。我第一次部署时就在这个文件上卡了挺久后来学聪明了先看官方文档里的配置示例对照着填而不是凭记忆写。如果你还没拿到模型 API Key也可以在配置里留一个addAiLater: true之类的占位字段先把服务跑通后面随时补上。改完配置后重启容器让配置生效docker compose restart openclaw3.4 配置角色规则用 Markdown 给智能体立规矩OpenClaw 最有意思的地方在于它的“人设”和“工作规则”可以用简单文本写在 workspace 里。我第一次配置时写了一个AGENTS.md文件放在data/workspace下内容大概是这样# OpenClaw Assistant 你是运行在云端的数字助理负责处理日常自动化任务。 ## 工作原则 1. 在执行任何删除类操作前必须向用户确认。 2. 遇到不确定的信息优先查阅 workspace 中的资料文件。 3. 每次完成任务后在 workspace/output 目录生成结构化报告。这就是 OpenClaw 和传统“机器人平台”最大的区别你在写文档而不是拉流程节点。它读到你写的规则后会在实际执行任务时遵守。我用下来觉得规则写得越具体执行结果越稳定。比如你只写“遇到不确定的信息要确认”它会频繁打断你但如果你写“遇到不确定的信息先从已有资料中检索检索不到再请求用户”它的自主性就好很多。4. 进阶配置让 OpenClaw 在云端更安全、更好用4.1 配置 HTTPS 反向代理Caddy 是最省心的选择服务跑在 8080 端口上直接用 IP:8080 访问也能用但不安全也不好看。我推荐用 Caddy 做反向代理它最大的优势是自动申请和续签 HTTPS 证书不用手动管理证书文件。安装 Caddy 很简单apt install -y caddy然后编辑/etc/caddy/Caddyfile写入openclaw.example.com { reverse_proxy localhost:8080 }保存后重启 Caddysystemctl reload caddyCaddy 会自动检测到域名解析并申请 Let’s Encrypt 免费证书。整个过程不用你碰证书文件只要域名解析正确一般一两分钟内就能通过 HTTPS 访问。如果你更习惯 Nginx也可以用类似的 server 配置但需要自己申请证书。腾讯云控制台有免费 SSL 证书可供下载下载后放到服务器上再在 Nginx 配置里指定证书路径。两种方案都能跑通区别只在于 Caddy 更自动化、Nginx 更普及、资料更多。4.2 安全组与防火墙只放行必要的端口腾讯云服务器的安全组是一个网络层面的访问控制配置错了服务就完全不可达。我的建议是只放行 22SSH、80HTTP、443HTTPS这三个端口。8080 这个端口不要对全网段开放只允许你自己电脑的 IP 访问或者干脆不开完全走 Caddy 反代。安全组规则可以在腾讯云控制台实例详情页里改。例如“8080”端口的来源填写你自己的公网 IP格式是你的公网IP/32这样别人扫不到你的 OpenClaw 端口攻击面小很多。操作系统内部的防火墙也要同步检查ufw status如果开了 UFW需要放行同样的端口ufw allow 22/tcp ufw allow 80/tcp ufw allow 443/tcp注意如果你在腾讯云安全组放行了端口但服务器连不上先检查系统防火墙 UFW 是否拦截了流量。安全组是“云外”过滤UFW 是“云内”过滤两层都要通才行。4.3 数据备份把整个 data 目录归档到对象存储OpenClaw 跑得越久workspace 里的积累越宝贵配置和审批规则也是不可再生的。我每周做一次全量备份把整个/opt/openclaw/data目录 tar 打包然后传到腾讯云 COS 对象存储tar -czf openclaw-backup-$(date %F).tar.gz -C /opt/openclaw data如果你是第一次部署建议在配置完成、验证通过之后立刻做一次备份并下载到本地。这样哪怕之后不小心把服务器玩坏了也能快速恢复到初始可用状态。4.4 审批机制小心处理 exec-approvals.jsonOpenClaw 对敏感操作有审批机制比如执行 shell 命令、修改关键文件它会把需要批准的规则记录到~/.openclaw/exec-approvals.json文件里。你在日志里如果看到类似“legacy exec approvals exist at /root/.openclaw/exec-approvals.json”的提示不用慌这是 OpenClaw 发现了旧的审批记录。处理方式有两种要么用openclaw命令的审批管理功能查看和确认要么直接查看这个 JSON 文件手动编辑不需要的审批项。只要容器内执行权限没变这个文件就不会导致任务中断。我在测试环境里遇到过容器重建后权限变化当时花了挺久才明白是挂载目录属主变了。后来统一用 root 用户跑容器或者显式指定 PUID/PGID问题就再没出现过。5. 常见问题与排查技巧实录5.1 docker compose 起不来日志一闪而过这是新手最容易碰到的问题。先不要慌用docker compose logs看错误信息cd /opt/openclaw docker compose logs --tail100最常见的几种原因和对应解法镜像拉取失败可能是网络问题。配置 Docker 镜像加速器或者检查你部署时填的镜像名是否正确。端口被占用lsof -i :8080看看 8080 是否被别的程序占着换一个宿主机端口比如9090:8080。配置格式错误openclaw.json少个冒号或者多逗号都会导致启动失败。本地用jq . openclaw.json校验一下 JSON 语法。5.2 模型 API 报 401 或超时服务起来了但一问它问题就报错十有八九是环境变量的问题。先确认 API Key 是否传进了容器docker exec -it openclaw env | grep API如果没有输出就是 Compose 文件里的environment段没生效检查 key 拼写和值里有没有多余空格。如果是超时重点看模型接口的base_url是否指向了不可达的地址。调用海外模型接口时网络不通畅是常事这种情况建议在腾讯云上选择带访问加速的方案或者改用国内可直接访问的模型服务商。5.3 Windows 本地部署时提示命令找不到虽然这篇教程的主线是腾讯云部署但很多人是在 Windows 本机试过之后才转上云的。在 Windows 上如果 PowerShell 里执行openclaw提示“无法识别 cmdlet”大概率是安装后可执行文件没有加入 PATH。解决办法是找到openclaw.exe的实际安装目录手动把它加入系统环境变量的 Path然后重启终端。这个问题和云上部署没有直接关系但如果你本机还没跑通可以先解决 PATH 问题再谈云端。5.4 定时任务不准时OpenClaw 的定时任务依赖容器内时钟。如果服务器时区不对任务执行时间就会和预期差几个小时。解决方法是给容器设置正确时区environment: - TZAsia/Shanghai重启容器后用docker exec openclaw date验证时间确认容器内时间和你的本地时间一致。我踩过这个坑之后每次部署新环境都会顺手写上TZAsia/Shanghai已经成习惯了。5.5 常用排查命令速查表场景命令看容器状态docker compose ps查看实时日志docker compose logs -f进入容器调试docker exec -it openclaw bash检查端口监听ss -lntp | grep 8080检查域名解析dig 119.29.29.29 openclaw.example.com校验 JSON 配置jq . /opt/openclaw/data/openclaw.json6. 写在最后部署完之后建议你先做这四件事前面部署流程走完服务也能正常访问了但真正让 OpenClaw 变得好用还要靠日常配置的积累。我根据自己的实际经验建议你先照下面这个顺序去折腾第一先给 OpenClaw 写一份清晰的 AGENTS.md把它的任务边界、工作习惯、每日固定动作写成文档。别急着接一堆工具先让它按文档跑通一个最基础的任务验证配置链路是否正常。第二配置一到两个真正高频使用的 skills。比如让它定时拉取某个网页的内容、整理你常用的 RSS 订阅、把日报自动归到指定目录。少而精地加技能出了问题也容易定位。第三打开 Caddy 日志和 OpenClaw 日志的循环归档。服务跑起来之后日志会越积越多建议配置 logrotate 或者定期清理避免磁盘被日志占满这是长期运行最容易忽视的一点。第四充分用好事后备份。每次改配置、加技能之前先打包一次 data 目录确认改动没问题后再删旧备份。这个习惯让我在无数次“改坏了想回滚”的时候保住了一整天的劳动成果。腾讯云上部署 OpenClaw 这件事本身不复杂真正考验人的是对配置文件里每个字段的理解。我也是从“跑通一个 Demo”到“让它稳定处理日常任务”慢慢磨过来的。希望这份教程能帮你把开头那段路走顺少踩几个我踩过的坑。
返回列表