ClawdBot快速部署:CentOS7+Docker+Docker Compose最小化安装脚本分享
本文介绍了如何在星图GPU平台上自动化部署ClawdBot镜像,构建本地化AI助手。该镜像基于vLLM推理引擎,支持Qwen3-4B等开源模型,可实现离线文本生成、智能对话与私有知识问答,适用于企业内网AI客服、家庭AI中枢等安全敏感场景。
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也能跑):
- 修改
docker-compose.yml中 vLLM 服务的command行:
command: --model TinyLlama/TinyLlama-1.1B-Chat-v1.0 --tensor-parallel-size 1 --dtype bfloat16 --max-model-len 2048
- 删除旧模型缓存(可选,节省空间):
rm -rf ~/clawdbot/models
- 重启服务:
cd ~/clawdbot && docker-compose down && docker-compose up -d
提示:TinyLlama 对硬件要求极低,实测在 Intel i5-8250U + 16GB内存笔记本上,首字延迟 <800ms,完全可用。
5.2 替换为更强模型(需更高显存)
如升级到 Qwen2.5-7B-Instruct(需≥12GB显存):
- 修改
command行:
command: --model Qwen2.5-7B-Instruct --tensor-parallel-size 1 --dtype half --enable-prefix-caching --max-model-len 32768
-
确保
~/clawdbot/models目录有足够空间(约15GB) -
重启服务即可
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星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。
更多推荐



所有评论(0)