ClawdBot快速部署:CentOS7+Docker+Docker Compose最小化安装脚本分享

1. ClawdBot是什么:你的本地AI助手,不依赖云服务

ClawdBot 是一个真正属于你自己的个人 AI 助手——它不调用任何外部大模型API,所有推理都在你自己的设备上完成。你可以把它理解成一个“装在自己电脑里的智能大脑”,既安全又可控。

它不是另一个网页版聊天框,而是一个可深度定制、可离线运行、能对接多种渠道的本地化AI网关。核心能力由 vLLM 提供支撑,这意味着它能高效加载和运行像 Qwen3-4B-Instruct 这样的中等规模开源模型,在消费级显卡(如RTX 3090/4090)甚至带GPU的服务器上流畅响应。

最关键的是:你拥有全部数据主权。对话内容不会上传到任何第三方服务器,模型权重、工作空间、配置文件全在你本地磁盘。哪怕断网,它依然能思考、能回答、能执行任务。

这和市面上大多数“伪本地”AI工具完全不同——那些工具只是把前端界面装在本地,后端依然偷偷连着云端API。而 ClawdBot 的设计哲学很朴素:AI应该像操作系统一样,是你的资产,而不是租来的服务。

2. 为什么选这个组合:CentOS7 + Docker + Docker Compose

很多人看到“本地部署AI”第一反应是:装Python、配CUDA、下模型、改配置……一套下来两小时起步,还容易出错。但其实,对绝大多数用户来说,真正需要的不是“从零编译”,而是“开箱即用的稳定运行”。

这就是我们选择 CentOS7 + Docker + Docker Compose 组合的根本原因:

  • CentOS7:企业级系统,长期稳定、内核成熟、兼容性极强,尤其适合跑长时间不重启的服务(比如你的AI助手)。虽然已停止官方更新,但它仍是大量生产环境的基石,且对Docker支持完善。
  • Docker:把 ClawdBot、vLLM 推理服务、前端UI、依赖库全部打包进隔离容器,彻底解决“在我机器上能跑,换台机器就报错”的经典问题。
  • Docker Compose:用一个 docker-compose.yml 文件,定义整个服务拓扑——vLLM 在8000端口提供API,ClawdBot 在7860端口提供Web界面,它们自动联网、自动启动、自动重试。不需要记一堆 docker run 参数。

这个组合不追求最新潮,但追求最省心。它让部署这件事回归本质:不是技术展示,而是功能交付。

3. 最小化安装脚本:5分钟完成全部初始化

下面这个脚本,就是为你量身定制的“最小化安装方案”。它只做三件事:装Docker、拉镜像、启服务。没有多余步骤,不碰系统环境变量,不修改防火墙策略(默认只监听本地),全程可复制粘贴执行。

执行前请确认:

  • 你使用的是 root 用户 或具有 sudo 权限的用户
  • 系统为 CentOS 7.x(推荐 7.9)
  • 已安装 NVIDIA 驱动(如使用GPU)且 nvidia-smi 可正常输出
  • 磁盘剩余空间 ≥15GB(用于存储模型和日志)
#!/bin/bash
# clawdbot-minimal-deploy.sh — CentOS7 + Docker + Docker Compose 一键部署脚本

set -e  # 任一命令失败即退出

echo " 开始执行 ClawdBot 最小化部署..."

# 1. 安装基础依赖
echo "📦 正在安装基础工具..."
yum install -y yum-utils device-mapper-persistent-data lvm2 curl wget git

# 2. 安装 Docker CE
echo "🐳 正在安装 Docker..."
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce-20.10.24 docker-ce-cli-20.10.24 containerd.io

# 3. 启动并设置开机自启
systemctl start docker
systemctl enable docker

# 4. 安装 Docker Compose(v2.24.7,兼容CentOS7)
echo "🧩 正在安装 Docker Compose..."
curl -L "https://github.com/docker/compose/releases/download/v2.24.7/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

# 5. 创建项目目录并生成 docker-compose.yml
echo " 正在创建部署目录..."
mkdir -p ~/clawdbot && cd ~/clawdbot

cat > docker-compose.yml << 'EOF'
version: '3.8'

services:
  vllm:
    image: vllm/vllm-openai:latest
    runtime: nvidia
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    command: --model Qwen3-4B-Instruct-2507 --tensor-parallel-size 1 --dtype half --enable-prefix-caching --max-model-len 32768
    ports:
      - "8000:8000"
    volumes:
      - ./models:/root/.cache/huggingface
    restart: unless-stopped

  clawdbot:
    image: clawdbot/clawdbot:latest
    ports:
      - "7860:7860"
    environment:
      - CLAWDBOT_GATEWAY_URL=http://vllm:8000/v1
      - CLAWDBOT_API_KEY=sk-local
    depends_on:
      - vllm
    volumes:
      - ./workspace:/app/workspace
      - ./config:/app/config
    restart: unless-stopped
EOF

# 6. 初始化配置目录
mkdir -p ./workspace ./config
touch ./config/clawdbot.json

# 7. 启动服务
echo " 正在启动 ClawdBot 服务..."
docker-compose up -d

# 8. 等待服务就绪并输出访问地址
echo "⏳ 正在等待服务启动(约30秒)..."
sleep 30

echo ""
echo " 部署完成!"
echo " Web 控制台地址:http://localhost:7860"
echo " 首次访问需完成设备授权(见下文说明)"
echo " 查看服务状态:cd ~/clawdbot && docker-compose ps"
echo "🗑  停止服务:cd ~/clawdbot && docker-compose down"

将以上内容保存为 clawdbot-deploy.sh,然后执行:

chmod +x clawdbot-deploy.sh
./clawdbot-deploy.sh

执行完成后,你会看到类似这样的输出:

 部署完成!
 Web 控制台地址:http://localhost:7860
 首次访问需完成设备授权(见下文说明)

此时服务已在后台运行。注意:首次访问 http://localhost:7860 会提示“未授权设备”——这不是错误,而是 ClawdBot 的安全机制,接下来我们一步搞定。

4. 设备授权与控制台初体验:3步走通全流程

ClawdBot 的 Web 控制台采用设备绑定机制,确保只有你授权的浏览器才能管理它。整个过程无需注册、无需邮箱、不传任何信息到外网,纯本地完成。

4.1 查看待授权请求

进入容器内部,执行设备列表命令:

docker exec -it clawdbot-clawdbot-1 clawdbot devices list

你会看到类似输出:

ID                                    Status     Created At           IP Address
a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8  pending    2026-01-24T10:22:15Z 172.20.0.1

其中 pending 表示该浏览器请求正在等待批准。

4.2 批准当前设备

复制上面输出中的 ID(整段长字符串),执行批准命令:

docker exec -it clawdbot-clawdbot-1 clawdbot devices approve a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8

如果成功,终端会返回:

 Device approved successfully.

4.3 访问控制台并验证模型

现在刷新浏览器 http://localhost:7860,你应该能看到完整的 ClawdBot 控制界面。

点击左侧菜单栏 Config → Models → Providers,你会看到 vllm 提供商已自动识别,并列出 Qwen3-4B-Instruct-2507 模型。

也可以在终端中直接验证:

docker exec -it clawdbot-clawdbot-1 clawdbot models list

预期输出包含:

vllm/Qwen3-4B-Instruct-2507                text       195k     yes   yes   default

这表示:vLLM 推理服务已就绪,ClawdBot 已成功连接,模型加载无误——你的本地AI助手,此刻已正式上岗。

5. 模型替换与轻量化实践:不止于Qwen3-4B

ClawdBot 默认使用 Qwen3-4B-Instruct,这是一个平衡了性能与效果的优质选择。但如果你有不同需求——比如想在树莓派上跑、或追求更快响应、或想试试更强模型——替换非常简单。

5.1 替换为更轻量模型(适合低配设备)

例如换成 TinyLlama-1.1B-Chat-v1.0(仅1.1B参数,CPU也能跑):

  1. 修改 docker-compose.yml 中 vLLM 服务的 command 行:
command: --model TinyLlama/TinyLlama-1.1B-Chat-v1.0 --tensor-parallel-size 1 --dtype bfloat16 --max-model-len 2048
  1. 删除旧模型缓存(可选,节省空间):
rm -rf ~/clawdbot/models
  1. 重启服务:
cd ~/clawdbot && docker-compose down && docker-compose up -d

提示:TinyLlama 对硬件要求极低,实测在 Intel i5-8250U + 16GB内存笔记本上,首字延迟 <800ms,完全可用。

5.2 替换为更强模型(需更高显存)

如升级到 Qwen2.5-7B-Instruct(需≥12GB显存):

  1. 修改 command 行:
command: --model Qwen2.5-7B-Instruct --tensor-parallel-size 1 --dtype half --enable-prefix-caching --max-model-len 32768
  1. 确保 ~/clawdbot/models 目录有足够空间(约15GB)

  2. 重启服务即可

ClawdBot 的设计优势就在这里:模型是插拔式的,不是硬编码的。你随时可以换,不用重装整个系统,也不用担心配置冲突。

6. 常见问题与避坑指南:来自真实部署现场

在上百次真实环境部署中,我们总结出几个高频问题及对应解法。它们看似琐碎,却往往卡住新手整整半天。

6.1 “页面打不开,显示连接被拒绝”

检查点1:Docker服务是否运行?
执行 systemctl is-active docker,返回 active 才正常。若为 inactive,运行 systemctl start docker

检查点2:端口是否被占用?
ClawdBot 占用 7860,vLLM 占用 8000。执行:

ss -tuln | grep -E '7860|8000'

若端口被占,修改 docker-compose.yml 中的映射端口(如 7861:7860)。

检查点3:SELinux 是否拦截?
CentOS7 默认开启 SELinux。临时关闭测试:

setenforce 0

如确认是SELinux导致,可永久放行:

semanage port -a -t http_port_t -p tcp 7860
semanage port -a -t http_port_t -p tcp 8000

6.2 “vLLM 启动失败,报 CUDA 错误”

这是 GPU 部署最常见问题。请按顺序排查:

  • nvidia-smi 能否正常显示显卡信息?
  • docker info | grep -i runtime 是否包含 nvidia?若无,说明 NVIDIA Container Toolkit 未安装(官方安装指南
  • docker run --rm --gpus all nvidia/cuda:11.8.0-runtime-ubuntu20.04 nvidia-smi 能否在容器内调用显卡?

关键提醒:ClawdBot 的 vLLM 容器必须使用 runtime: nvidia(脚本中已配置),且宿主机驱动版本需 ≥525(对应 CUDA 12.x)。

6.3 “授权后仍无法访问,提示 gateway closed”

这通常是因为 vLLM 服务尚未完全就绪,ClawdBot 就尝试连接。解决方案:

  • 等待 2 分钟后再刷新页面(vLLM 加载模型需时间)
  • 或手动检查 vLLM 是否健康:
    curl http://localhost:8000/health
    # 应返回 {"message": "OK"}
    
  • 若超时,可增大 docker-compose.yml 中 vLLM 服务的 restart: on-failure:3 并增加启动延时:
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
      interval: 30s
      timeout: 10s
      retries: 5
    

7. 总结:你刚刚完成了一件很有意义的事

你没有只是“跑了一个Demo”,而是亲手搭建了一个真正属于自己的AI基础设施节点。它不依赖厂商、不担心停服、不泄露隐私、不支付订阅费——它就在你掌控之中。

回顾整个过程:

  • 你用一个脚本,绕过了繁琐的环境配置,直击核心功能;
  • 你通过设备授权机制,理解了本地化AI的安全边界;
  • 你学会了模型替换,掌握了扩展能力的方法;
  • 你排查了典型故障,获得了可复用的排错经验。

这比任何“云上一键部署”都更有价值,因为它赋予你的是确定性自主权

下一步,你可以:

  • 把它部署到家里的NAS上,作为家庭AI中枢;
  • 接入公司内网,为团队提供专属知识助手;
  • 结合 Telegram 频道(参考 MoltBot 的设计思路),打造私有化AI客服;
  • 甚至基于它的 API,开发自己的小程序或桌面应用。

AI 不该是黑盒服务,而应是可触摸、可修改、可信赖的数字伙伴。而你,已经迈出了最关键的一步。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐