🦞Docker 上部署 Clawdbot(Moltbot)AI助手完整步骤教程

简介: Clawdbot是一款开源的本地优先个人AI助手,可运行在个人设备上,支持WhatsApp、Telegram、Slack、Discord等十余种通信渠道,兼容macOS、iOS、Android系统,还能渲染实时Canvas界面。其核心优势在于本地化运行带来的快速响应与隐私安全,网关仅作为控制平台,真正的助理功能聚焦于实际任务处理。本文基于Clawdbot官方文档整理,提供Docker Compose部署的完整指南,涵盖环境准备、源码获取、配置、构建、启动及运维等关键环节,补充生产环境必需的安全配置、数据持久化、备份与监控建议,且与官方配置无冲突,适用于希望通过Docker快速部署的用户。

Clawdbot是一款开源的本地优先个人AI助手,可运行在个人设备上,支持WhatsApp、Telegram、Slack、Discord等十余种通信渠道,兼容macOS、iOS、Android系统,还能渲染实时Canvas界面。其核心优势在于本地化运行带来的快速响应与隐私安全,网关仅作为控制平台,真正的助理功能聚焦于实际任务处理。本文基于Clawdbot官方文档整理,提供Docker Compose部署的完整指南,涵盖环境准备、源码获取、配置、构建、启动及运维等关键环节,补充生产环境必需的安全配置、数据持久化、备份与监控建议,且与官方配置无冲突,适用于希望通过Docker快速部署的用户。需说明的是,Clawdbot暂无官方预构建Docker镜像,需通过源码+Dockerfile本地构建,这也是官方推荐的最稳定部署方式。
image.png

一、部署模式说明

Clawdbot的Docker部署分为三种场景,适配不同使用需求,核心差异集中在配置复杂度、数据处理与资源限制上:

  1. 测试/本地体验:适用于功能验证、开发调试场景。配置简化,无严格资源限制,数据可无需持久化,日志仅输出至控制台,重点在于快速启动体验核心功能。
  2. 单机生产(官方推荐):适用于中小规模线上运行场景。强制开启数据持久化,配置重启策略、健康检查与资源限制,日志持久化存储,需定期备份数据,保障服务稳定可靠。
  3. 企业级生产:适用于高可用、大规模业务场景。基于单机生产配置扩展,支持多节点部署、CI/CD流程集成、外部数据库对接、监控告警与容灾备份,本文暂不覆盖该场景的多节点高可用与分布式数据库部署,需另行设计架构。

需特别提示:本文示例默认标注NODE_ENV=production,但测试部署与生产部署的配置要求差异显著,需根据实际场景选择对应配置策略,避免混用导致服务异常。

提示:【阿里云轻量应用服务器】已上线 Moltbot(Clawdbot) 官方镜像,可5分钟开跑!怕麻烦的同学参考 阿里云轻量服务器一键部署页,简单快速部署:
阿里云Moltbot(Clawdbot)一键部署页:https://www.aliyun.com/activity/ecs/clawdbot
1.png
3.png

二、环境准备:安装Docker与Docker Compose

为降低部署门槛,提供两种Docker环境安装方式,可根据服务器网络环境选择:

2.1 一键安装脚本(推荐国内服务器)

执行以下命令,脚本完全基于Docker官方安装流程整理,仅优化国内网络访问体验,内置国内可访问的Docker镜像源与软件仓库,不修改Docker核心配置与运行行为,也可独立用于其他Docker部署场景:

bash <(wget -qO- https://xuanyuan.cloud/docker.sh)

2.2 Docker官方安装方式(适用于网络可直连环境)

若服务器可正常访问Docker官方站点,可直接遵循官方文档安装,以Ubuntu系统为例:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

其他系统需参考Docker官方文档(地址:https://docs.docker.com/engine/install)执行安装。

2.3 安装验证

无论采用哪种方式,安装完成后需执行以下命令验证,确保Docker与Docker Compose正常可用:

docker --version
docker compose version

若输出类似Docker version 26.0.0, build 2ae903eDocker Compose version v2.24.6的版本信息,即表示安装成功。

三、获取Clawdbot源码

官方推荐直接从GitHub克隆源码,项目目录中已包含Docker部署必需的文件(Dockerfile、docker-compose.yml官方基础版、.env.example),生产环境可基于这些文件扩展配置:

git clone https://github.com/clawdbot/clawdbot.git
cd clawdbot

四、配置环境变量

环境变量用于定义数据库凭证、服务端口、日志级别等核心参数,需根据部署场景单独配置,避免敏感信息泄露:

4.1 复制环境变量模板

  • 测试场景:直接复制基础模板,无需额外创建:
    cp .env.example .env
    
  • 生产场景(推荐):单独创建生产环境变量文件,后续命令需指定该文件:
    cp .env.example .env.production
    

4.2 环境变量配置说明(生产场景示例)

生产环境的.env.production文件需包含以下核心配置,需替换默认值为实际参数,尤其是敏感凭证:

# 基础配置
NODE_ENV=production

# 数据库配置(生产环境必须替换为强密码)
DB_PASSWORD=请替换为随机强密码(长度≥16位,含大小写/数字/特殊符号)
DATABASE_URL=postgresql://clawdbot:${DB_PASSWORD}@db:5432/clawdbot

# Bot / Gateway 配置
BOT_TOKEN=请替换为真实的Bot Token
GATEWAY_PORT=3000

# 日志配置
LOG_LEVEL=info
LOG_DIR=/var/log/clawdbot

# 其他可选配置
WORKER_CONCURRENCY=4

4.3 安全加固

生产环境的环境变量文件包含敏感凭证,需严格限制文件权限,避免未授权访问:

chmod 600 .env.production

重要安全提示:请勿使用示例中的弱密码,生产环境建议使用随机生成的强密码;.env或.env.production文件禁止提交到公共代码仓库;企业级部署建议使用Docker Secret或第三方密钥管理系统替代环境变量文件存储敏感信息。

五、构建Docker镜像

由于Clawdbot无官方远程镜像仓库,需在项目根目录本地构建镜像,执行以下命令:

docker build -t clawdbot:latest .

构建完成后,可通过以下命令确认镜像是否创建成功:

docker images | grep clawdbot

若输出包含clawdbot:latest的记录,说明镜像构建成功。

六、初始化流程(Onboarding)

首次部署前需执行初始化流程,用于创建数据库结构、基础配置等,该步骤为首次部署必需,且设计为幂等操作,重复执行不会破坏已有数据,仅校验或补全基础配置:

  • 测试场景:
    docker compose run --rm clawdbot-cli onboard
    
  • 生产场景:
    docker compose --env-file .env.production run --rm clawdbot-cli onboard
    
    其中,clawdbot-cli是官方docker-compose.yml中定义的管理服务,专门用于执行初始化与维护命令,执行成功后会显示初始化完成的提示信息。

七、启动Clawdbot服务

根据部署场景选择对应的启动方式,生产场景需额外配置生产级参数,保障服务稳定性:

7.1 测试场景启动(快速体验)

无需额外修改配置,直接执行以下命令启动服务,容器会在后台运行:

docker compose up -d

7.2 生产场景启动(推荐配置)

首先需创建或修改docker-compose.prod.yml文件,补充生产环境必需的重启策略、健康检查、资源限制、日志轮转与数据持久化配置(适配普通Docker Compose非Swarm模式):

version: '3.8'

services:
  clawdbot-gateway:
    image: clawdbot:latest
    command: ["gateway"]
    ports:
      - "3000:3000"
    env_file: .env.production
    restart: unless-stopped  # 进程退出时自动重启(生产必需)
    # 健康检查配置(生产必需)
    healthcheck:
      # 以下为示例健康检查路径,需根据Clawdbot实际提供的健康接口调整
      # 若官方未提供健康接口,可替换为端口连通性检查:["CMD", "nc", "-z", "localhost", "3000"]
      test: ["CMD", "curl", "-f", "http://localhost:3000/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s
    # Docker Compose(非Swarm)资源限制(生产建议)
    cpus: "1.0"
    mem_limit: 1g
    # 日志轮转(生产建议)
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
        max-file: "5"
    volumes:
      - clawdbot-logs:/var/log/clawdbot

  clawdbot-worker:
    image: clawdbot:latest
    command: ["worker"]
    env_file: .env.production
    restart: unless-stopped
    healthcheck:
      # 以下为示例健康检查命令,需根据Clawdbot实际情况调整
      test: ["CMD", "node", "-e", "process.exit(0)"]
      interval: 30s
      timeout: 10s
      retries: 3
    # Docker Compose(非Swarm)资源限制(生产建议)
    cpus: "1.0"
    mem_limit: 512m
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
        max-file: "5"
    volumes:
      - clawdbot-logs:/var/log/clawdbot

  db:
    image: postgres:15-alpine
    env_file: .env.production
    environment:
      - POSTGRES_USER=clawdbot
      - POSTGRES_PASSWORD=${
   DB_PASSWORD}
      - POSTGRES_DB=clawdbot
    volumes:
      - clawdbot-db-data:/var/lib/postgresql/data  # 数据持久化卷(生产必需)
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U clawdbot -d clawdbot"]
      interval: 10s
      timeout: 5s
      retries: 5
    # Docker Compose(非Swarm)资源限制(生产建议)
    cpus: "0.5"
    mem_limit: 512m
    # 生产环境禁止暴露数据库端口到宿主机
    # ports:
    #   - "5432:5432"

volumes:
  clawdbot-db-data:  # 数据库持久化卷(核心,不可随意删除)
  clawdbot-logs:     # 日志持久化卷

若使用Docker Swarm模式,需删除上述配置中的cpusmem_limit,替换为以下部署配置(仅在Swarm模式下生效):

deploy:
  resources:
    limits:
      cpus: '1'
      memory: 1G

完成配置后,执行以下命令启动生产环境服务:

docker compose -f docker-compose.prod.yml up -d

7.3 查看运行状态

启动后可通过以下命令查看服务运行情况与日志,排查启动异常:

  • 测试场景:
    docker compose ps
    docker compose logs -f
    
  • 生产场景:
    docker compose -f docker-compose.prod.yml ps
    docker compose -f docker-compose.prod.yml logs -f
    
    正常运行的服务包含三类:clawdbot-gateway(仅该服务需对外暴露端口)、clawdbot-worker(内部服务,禁止公网访问)、db(数据库服务,禁止公网访问)。

八、数据持久化与安全提示

生产环境需重点关注数据安全,避免数据丢失或未授权访问:

  1. 数据存储载体:PostgreSQL数据库数据存储在名为clawdbot-db-data的Docker Volume中,该Volume是数据唯一持久化载体,容器删除后数据不会丢失,但需注意Volume仅能应对容器层面的故障,无法抵御磁盘故障或误操作。
  2. 禁止危险操作:生产环境严禁执行docker compose down -v命令,-v参数会删除Volume,导致数据永久丢失;如需清理容器,仅执行docker compose down(仅删除容器,保留Volume)。
  3. 敏感信息保护:环境变量文件、数据库密码、Bot Token等敏感信息需严格保密,定期更换密码,避免泄露导致安全风险。

九、服务访问与防火墙配置

9.1 访问方式

Clawdbot Gateway默认监听3000端口,本地访问地址为http://localhost:3000,服务器访问地址为http://<服务器IP>:3000,可通过该地址对接通信渠道或直接操作AI助手。

9.2 防火墙/安全组配置(生产必需)

  1. 端口放行规则:仅放行3000端口(Clawdbot Gateway),禁止放行5432端口(数据库),减少攻击面。
  2. 访问来源限制:建议限制3000端口的访问来源,如仅允许企业内网IP或指定信任IP访问,提升安全性。
  3. 配置方式:云服务器需在厂商控制台配置安全组规则,物理机或虚拟机需通过iptablesfirewalld配置端口规则。

十、数据库备份(生产环境必需)

Docker Volume不等于备份,生产环境必须配置数据库备份策略,应对磁盘故障、误操作等场景:

10.1 手动备份

  • 测试场景:
    docker compose exec db pg_dump -U clawdbot -d clawdbot > clawdbot_backup_$(date +%Y%m%d).sql
    
  • 生产场景:
    docker compose -f docker-compose.prod.yml exec -T db pg_dump -U clawdbot -d clawdbot > clawdbot_backup_$(date +%Y%m%d_%H%M%S).sql
    # 备份文件权限加固,仅当前用户可读写
    chmod 600 clawdbot_backup_*.sql
    

10.2 自动备份(推荐)

创建定时备份脚本backup_clawdbot.sh,实现自动备份与备份文件清理:

#!/bin/bash
# Clawdbot 数据库自动备份脚本(生产环境)
set -e

# 配置项
BACKUP_DIR="/data/clawdbot/backup"
COMPOSE_FILE="/path/to/clawdbot/docker-compose.prod.yml"  # 替换为实际docker-compose.prod.yml路径
RETENTION_DAYS=7  # 保留最近7天备份

# 创建备份目录
mkdir -p $BACKUP_DIR

# 执行备份
BACKUP_FILE="$BACKUP_DIR/clawdbot_backup_$(date +%Y%m%d_%H%M%S).sql"
docker compose -f $COMPOSE_FILE exec -T db pg_dump -U clawdbot -d clawdbot > $BACKUP_FILE

# 备份文件权限加固
chmod 600 $BACKUP_FILE

# 清理过期备份,删除超过保留天数的文件
find $BACKUP_DIR -name "clawdbot_backup_*.sql" -mtime +$RETENTION_DAYS -delete

# 建议:将备份文件同步至对象存储(OSS/S3/NAS)或异地服务器,提升容灾能力
# 示例:aws s3 cp $BACKUP_FILE s3://clawdbot-backup/
# 示例:rsync -avz $BACKUP_FILE backup@remote-server:/data/backup/

赋予脚本执行权限并添加到crontab,设置每日凌晨2点自动备份:

chmod +x backup_clawdbot.sh
crontab -e
# 新增一行,替换脚本实际路径
0 2 * * * /path/to/backup_clawdbot.sh >> /var/log/clawdbot_backup.log 2>&1

十一、升级与维护

11.1 更新代码与重新构建镜像

当Clawdbot有版本更新时,执行以下命令拉取最新代码并重新构建镜像:

cd clawdbot
git pull
docker build -t clawdbot:latest .

11.2 重启服务

  • 测试场景:
    docker compose down
    docker compose up -d
    
  • 生产场景:
    docker compose -f docker-compose.prod.yml down
    docker compose -f docker-compose.prod.yml up -d
    

11.3 升级注意事项

  1. 升级前必须备份数据库,避免版本更新导致的数据库结构变更引发数据丢失。
  2. 若新版本包含数据库结构变更,需先查看官方升级指引,部分版本可能需要执行数据迁移命令。
  3. 升级后建议先查看服务日志,确认无报错后再对外提供服务,避免线上故障。

十二、架构说明

12.1 测试/单机部署架构

核心架构为单Docker网络,各组件通过内部网络通信,仅Gateway对外暴露端口,数据库数据存储在Docker Volume中,结构简洁:
用户浏览器/客户端 →(HTTP :3000)→ clawdbot-gateway(Web/API接入层)→(内部网络)→ clawdbot-worker(后台任务处理)→(SQL)→ PostgreSQL(数据持久化服务),Docker Volume(clawdbot-db-data)为数据持久化核心载体。

12.2 生产级单节点增强架构

在基础架构上增加生产级增强特性:Gateway配置重启策略、健康检查与资源限制;worker无公网暴露且配置资源限制;数据库开启Volume持久化、定期备份且不暴露公网端口;新增定时备份脚本(权限加固+异地存储)与日志卷(轮转策略+权限控制);通过防火墙/安全组限制Gateway访问来源,整体安全性与稳定性显著提升。

十三、日志管理(生产建议)

  1. 日志持久化:通过Docker Volume将日志挂载到宿主机,便于集中管理与追溯,已在docker-compose.prod.yml中配置。
  2. 企业级日志接入:生产环境建议将日志接入专业日志系统,如ELK Stack(Elasticsearch + Logstash + Kibana)、Loki + Grafana,或云厂商日志服务(阿里云SLS、腾讯云CLS),配置示例(以Loki为例):
    logging:
    driver: "loki"
    options:
     loki-url: "http://loki:3100/loki/api/v1/push"
     loki-external-labels: "service={
         {.Name}},env=production"
    

十四、常见问题说明

  1. 为什么没有docker pull clawdbot/...命令?
    Clawdbot官方目前未发布官方Docker镜像,核心原因包括配置高度定制化(涉及Token、数据库、Gateway等敏感参数)、避免通用镜像导致的安全误用,以及鼓励用户自行构建实现可控部署。

  2. 可以自行发布镜像到私有仓库吗?
    可以,流程如下,适合企业内部部署或CI/CD集成使用:

    docker tag clawdbot:latest registry.example.com/clawdbot:latest
    docker push registry.example.com/clawdbot:latest
    
  3. 重复执行onboard命令会有风险吗?
    不会,onboard命令设计为幂等操作,重复执行仅会校验已有配置,补全缺失的基础配置,不会删除或修改业务数据。

  4. 生产环境如何进一步提升安全性?
    可采取多重措施:使用Docker Secret或第三方密钥管理系统存储敏感凭证(替代.env文件);为Gateway配置HTTPS(通过Nginx反向代理);限制容器的Linux内核能力(capabilities);使用非root用户运行容器;开启Docker守护进程的TLS认证。

  5. Docker Volume备份和数据库备份有什么区别?
    Docker Volume备份是对整个数据目录打包,恢复速度快,但占用空间大,无法实现单表恢复;数据库逻辑备份(pg_dump)为SQL文本格式,占用空间小,支持精细恢复(如单表恢复),是生产环境首选。建议两者结合使用,Volume备份用于快速恢复,逻辑备份用于精细恢复和异地容灾。
    2.png

十五、总结

本文基于Clawdbot官方基础配置,补充了生产环境必需的安全、可靠与运维能力,无官方配置冲突:测试部署聚焦快速体验,配置简化无需严格资源限制;单机生产部署是核心推荐方案,需重点关注数据持久化、重启策略、健康检查、资源限制与定期备份;企业级生产需在单机基础上扩展多节点、监控、容灾等能力,本文暂不覆盖。需特别强调:Docker Volume不等于备份,生产环境必须配置定期数据库备份与异地存储;暂无官方预构建镜像,需自行构建保证配置可控。如需K8s、CI/CD或高可用等更高级部署方式,可在本文单机生产配置基础上扩展。

目录
相关文章
|
2天前
|
人工智能 自然语言处理 Shell
🦞 如何在 Moltbot 配置阿里云百炼 API
本教程指导用户在开源AI助手Clawdbot中集成阿里云百炼API,涵盖安装Clawdbot、获取百炼API Key、配置环境变量与模型参数、验证调用等完整流程,支持Qwen3-max thinking (Qwen3-Max-2026-01-23)/Qwen - Plus等主流模型,助力本地化智能自动化。
🦞 如何在 Moltbot 配置阿里云百炼 API
|
6天前
|
人工智能 API 开发者
Claude Code 国内保姆级使用指南:实测 GLM-4.7 与 Claude Opus 4.5 全方案解
Claude Code是Anthropic推出的编程AI代理工具。2026年国内开发者可通过配置`ANTHROPIC_BASE_URL`实现本地化接入:①极速平替——用Qwen Code v0.5.0或GLM-4.7,毫秒响应,适合日常编码;②满血原版——经灵芽API中转调用Claude Opus 4.5,胜任复杂架构与深度推理。
|
10天前
|
JSON API 数据格式
OpenCode入门使用教程
本教程介绍如何通过安装OpenCode并配置Canopy Wave API来使用开源模型。首先全局安装OpenCode,然后设置API密钥并创建配置文件,最后在控制台中连接模型并开始交互。
4659 8
|
16天前
|
人工智能 JavaScript Linux
【Claude Code 全攻略】终端AI编程助手从入门到进阶(2026最新版)
Claude Code是Anthropic推出的终端原生AI编程助手,支持40+语言、200k超长上下文,无需切换IDE即可实现代码生成、调试、项目导航与自动化任务。本文详解其安装配置、四大核心功能及进阶技巧,助你全面提升开发效率,搭配GitHub Copilot使用更佳。
10470 22
|
3天前
|
人工智能 自然语言处理 Cloud Native
大模型应用落地实战:从Clawdbot到实在Agent,如何构建企业级自动化闭环?
2026年初,开源AI Agent Clawdbot爆火,以“自由意志”打破被动交互,寄生社交软件主动服务。它解决“听与说”,却缺“手与脚”:硅谷Manus走API原生路线,云端自主执行;中国实在Agent则用屏幕语义理解,在封闭系统中精准操作。三者协同,正构建AI真正干活的三位一体生态。
2384 9
|
1天前
|
存储 安全 数据库
使用 Docker 部署 Clawdbot(官方推荐方式)
Clawdbot 是一款开源、本地运行的个人AI助手,支持 WhatsApp、Telegram、Slack 等十余种通信渠道,兼容 macOS/iOS/Android,可渲染实时 Canvas 界面。本文提供基于 Docker Compose 的生产级部署指南,涵盖安全配置、持久化、备份、监控等关键运维实践(官方无预构建镜像,需源码本地构建)。
1372 3
|
1天前
|
机器人 API 数据安全/隐私保护
只需3步,无影云电脑一键部署Moltbot(Clawdbot)
本指南详解Moltbot(Clawdbot)部署全流程:一、购买无影云电脑Moltbot专属套餐(含2000核时);二、下载客户端并配置百炼API Key、钉钉APP KEY及QQ通道;三、验证钉钉/群聊交互。支持多端,7×24运行可关闭休眠。
2245 2
|
18天前
|
存储 人工智能 自然语言处理
OpenSpec技术规范+实例应用
OpenSpec 是面向 AI 智能体的轻量级规范驱动开发框架,通过“提案-审查-实施-归档”工作流,解决 AI 编程中的需求偏移与不可预测性问题。它以机器可读的规范为“单一真相源”,将模糊提示转化为可落地的工程实践,助力开发者高效构建稳定、可审计的生产级系统,实现从“凭感觉聊天”到“按规范开发”的跃迁。
2633 18
|
10天前
|
人工智能 前端开发 Docker
Huobao Drama 开源短剧生成平台:从剧本到视频
Huobao Drama 是一个基于 Go + Vue3 的开源 AI 短剧自动化生成平台,支持剧本解析、角色与分镜生成、图生视频及剪辑合成,覆盖短剧生产全链路。内置角色管理、分镜设计、视频合成、任务追踪等功能,支持本地部署与多模型接入(如 OpenAI、Ollama、火山等),搭配 FFmpeg 实现高效视频处理,适用于短剧工作流验证与自建 AI 创作后台。
1419 6