在 KubeSphere 上运行 Moltbot(Clawdbot):自托管 AI 助手的云原生实践

更名说明:Clawdbot 项目已更名为 Moltbot ,当前官方仓库为 https://github.com/moltbot/moltbot。 本文基于最新仓库内容和 README 编写。

一、什么是 Clawdbot?

Clawdbot 是一个开源的、自托管的个人 AI 助手框架。它以本地服务或守护进程的形式运行,通过接入不同的消息通道(如 Telegram、Discord、Slack 等)与用户交互,并根据配置执行自动化任务。

从官方 README 可以明确以下几点:

  • 完全自托管:非 SaaS,数据和运行完全由用户控制
  • CLI + Gateway 服务:核心运行方式,支持多种部署模式
  • 配置驱动:通过配置文件定义 Bot 的行为和接入通道
  • 长期运行:适合作为后台服务持续运行

该项目更偏向"可编排的 AI 助手代理",而不是传统意义上的云服务或平台组件。

二、为什么在 KubeSphere 上运行 Clawdbot?

虽然 Clawdbot 可以直接在本地或单台服务器上运行,但在团队或长期运行场景中,使用 Kubernetes 平台更具优势,而 KubeSphere 提供了完整的可视化运维能力。

将 Clawdbot 部署在 KubeSphere 上可以解决以下问题:

  • 部署标准化:避免手动维护本地守护进程
  • 配置集中管理:通过 ConfigMap / Secret 管理 Bot 配置和密钥
  • 运行状态可观测:统一查看日志和 Pod 状态
  • 可重复部署:同一套定义可在不同环境复用

对于希望将 Bot 类服务纳入云原生运维体系的团队,这是一种更稳妥的方式。

三、部署前准备

环境要求

  • KubeSphere 集群:已部署完成,版本要求 v4.x 及以上
  • 已安装扩展:KubeSphere Gateway 及 cert-manager 扩展
  • 镜像仓库:可访问公有或私有镜像仓库

四、在 KubeSphere 中部署 Clawdbot

步骤一:安装扩展组件

将 Clawdbot 扩展组件推送到 KubeSphere 扩展商店,并进行安装。在安装过程中,通过扩展组件配置加载相关密钥:

您需要将相关秘钥通过扩展组件配置加载到 Clawdbot。

yaml 复制代码
clawdbot:
  secrets:
    create: true
    data:
      # Set via --set or environment variables
      anthropicApiKey: ""
      openaiApiKey: ""
      discordBotToken: ""
      telegramBotToken: ""
      gatewayToken: ""  # Auto-generated if empty

注意: 当前配置中禁用了控制界面中的设备识别和配对功能。

步骤二:配置 Ingress

您可以通过 KubeSphere Gateway 扩展配合 cert-manager 扩展,使用 HTTPS 协议将 Clawdbot 服务以 Ingress 的方式对外暴露。

首先,在集群中创建并启用集群网关,作为统一的 Ingress 入口。随后,在该网关之上为 Clawdbot 服务创建对应的应用路由,并通过 cert-manager 自动签发和管理 TLS 证书,从而实现安全的 HTTPS 访问。

yaml 复制代码
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
  name: clawdbot
  namespace: extension-clawdbot
  annotations:
    cert-manager.io/cluster-issuer: default-issuer       # 借助 cert-manager, 为 ingress 自动生成和创建证书
    kubesphere.io/creator: admin
spec:
  ingressClassName: kubesphere-router-cluster
  tls:
    - hosts:
        - 172.31.19.4.nip.io
      secretName: clawdbot-cert
  rules:
    - host: 172.31.19.4.nip.io
      http:
        paths:
          - path: /
            pathType: ImplementationSpecific
            backend:
              service:
                name: clawdbot
                port:
                  number: 18789

步骤三:访问控制页面

使用如下命令获取 Gateway token:

复制代码
kubectl get secret clawdbot -n extension-clawdbot \
  -o jsonpath='{.data.gatewayToken}' | base64 --decode

然后在浏览器中输入以下地址访问 Clawdbot 控制页面:

复制代码
https://{ingress 暴露地址}/?token=${token}

五、运维建议

在生产或长期运行场景中,建议遵循以下最佳实践:

  • 资源限制:为 Clawdbot 设置合理的 CPU / 内存限制,避免资源争用。
  • 配置管理:通过修改 ConfigMap 调整 Bot 行为,而非重新构建镜像。
  • 版本更新:定期更新镜像,跟进上游版本变更,获取新功能和修复。
  • 密钥轮换:对 Secret 中的 Token 进行定期轮换,增强安全性。

需要注意的是,Clawdbot 本身并不负责外部平台的权限管理,相关 OAuth 或 Bot Token 仍需在对应平台侧正确配置。

六、总结

Clawdbot 并不是一个"即开即用"的 SaaS 产品,而是一个强调自主可控、可编排、可长期运行的 AI 助手框架。这类服务一旦进入稳定使用阶段,其运行可靠性、配置管理能力和运维成本,往往比功能本身更重要。

通过 KubeSphere,将 Clawdbot 纳入 Kubernetes 的统一管理体系,可以在不改变其原有架构和使用方式的前提下,获得标准化部署、可观测运维以及安全可控的运行环境。对于希望长期运行 Bot 服务、或在团队内复用 AI 助手能力的用户来说,这是一条非常自然、也非常稳妥的路径。

如果你正在寻找一种更工程化、更可持续的方式来运行自托管 AI 服务,不妨试试 KubeSphere ------它不仅适合管理传统应用,也同样适合承载新一代的 AI Agent 与自动化服务。

欢迎大家体验 KubeSphere,也欢迎在社区中分享你自己的 AI + 云原生实践。

相关推荐
dyj0954 小时前
Dify - (一)、本地部署Dify+聊天助手/Agent
人工智能·docker·容器
Nice_Fold7 小时前
Kubernetes DaemonSet、StatefulSet与Service(自用笔记)
笔记·容器·kubernetes
AI攻城狮8 小时前
Hermes 下启动 Sub Agent 失败的痛苦教训
云原生
空中海8 小时前
第六篇:架构篇 — 微服务、部署、高并发与专家级能力
微服务·云原生·架构
Java后端的Ai之路12 小时前
Kubernetes是什么?(小白入门版)
云原生·容器·kubernetes·教程
heimeiyingwang12 小时前
【架构实战】编排vs协同:微服务通信架构选型
微服务·云原生·架构
木雷坞12 小时前
视觉算法环境 Docker 镜像拉取失败排查
运维·人工智能·docker·容器
空中海13 小时前
第二篇:注册中心篇 — Nacos 与 Eureka 服务注册发现
spring boot·云原生·eureka
瀚高PG实验室13 小时前
安全版V4.5版本docker容器license过期问题处理步骤
安全·docker·容器·瀚高数据库