ClawdBot快速部署:Ubuntu 22.04 + Docker 24.x 最小依赖安装指南
ClawdBot快速部署:Ubuntu 22.04 + Docker 24.x 最小依赖安装指南
1. 引言
想在自己的服务器上运行一个完全私有的AI助手吗?厌倦了各种复杂的配置和依赖问题?今天,我们就来聊聊ClawdBot——一个让你能在自己设备上快速部署的个人AI助手。
ClawdBot基于vLLM提供后端模型能力,这意味着你可以轻松地接入各种开源大模型,打造一个完全属于你自己的智能助手。无论是日常问答、文档分析,还是简单的自动化任务,它都能帮你搞定。
本指南将带你从零开始,在Ubuntu 22.04系统上,使用Docker 24.x版本,以最小的依赖完成ClawdBot的部署。整个过程只需要几个简单的命令,即使你是Linux新手也能轻松上手。
2. 环境准备
在开始部署之前,我们需要确保系统环境符合要求。这里我们选择Ubuntu 22.04 LTS作为操作系统,因为它有长期支持,稳定性好,社区资源丰富。
2.1 系统要求检查
首先,登录你的Ubuntu服务器,检查系统版本和资源情况:
# 查看系统版本
lsb_release -a
# 查看内存和CPU信息
free -h
nproc
# 查看磁盘空间
df -h /
最小系统要求:
- Ubuntu 20.04或更高版本(推荐22.04 LTS)
- 至少4GB内存(8GB以上更佳)
- 至少20GB可用磁盘空间
- 稳定的网络连接
2.2 Docker安装与配置
ClawdBot使用Docker进行部署,这能最大程度地减少环境依赖问题。如果你的系统还没有安装Docker,按照以下步骤操作:
# 1. 更新系统包列表
sudo apt update
# 2. 安装必要的依赖包
sudo apt install -y ca-certificates curl gnupg lsb-release
# 3. 添加Docker官方GPG密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 4. 设置Docker仓库
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 5. 安装Docker引擎
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 6. 验证Docker安装
sudo docker --version
sudo docker compose version
安装完成后,我们需要进行一些基本配置:
# 将当前用户添加到docker组,避免每次都要用sudo
sudo usermod -aG docker $USER
# 重启docker服务
sudo systemctl restart docker
# 设置Docker开机自启
sudo systemctl enable docker
# 验证Docker运行状态
sudo systemctl status docker
重要提示:执行完usermod命令后,你需要重新登录服务器,或者执行newgrp docker命令,才能使组权限生效。
3. ClawdBot快速部署
环境准备就绪后,我们就可以开始部署ClawdBot了。整个过程非常简单,只需要几个命令。
3.1 拉取ClawdBot镜像
ClawdBot提供了预构建的Docker镜像,我们可以直接拉取:
# 拉取ClawdBot镜像
docker pull ghcr.io/clawdbot/clawdbot:latest
# 查看拉取的镜像
docker images | grep clawdbot
3.2 创建配置文件目录
为了让配置持久化,我们需要在宿主机上创建一个目录来存放配置文件:
# 创建配置目录
mkdir -p ~/.clawdbot
# 创建默认配置文件
cat > ~/.clawdbot/clawdbot.json << 'EOF'
{
"agents": {
"defaults": {
"model": {
"primary": "vllm/Qwen3-4B-Instruct-2507"
},
"workspace": "/app/workspace",
"compaction": {
"mode": "safeguard"
},
"maxConcurrent": 4,
"subagents": {
"maxConcurrent": 8
}
}
},
"models": {
"mode": "merge",
"providers": {
"vllm": {
"baseUrl": "http://localhost:8000/v1",
"apiKey": "sk-local",
"api": "openai-responses",
"models": [
{
"id": "Qwen3-4B-Instruct-2507",
"name": "Qwen3-4B-Instruct-2507"
}
]
}
}
}
}
EOF
这个配置文件设置了默认的模型和基本的运行参数。我们使用Qwen3-4B-Instruct-2507作为默认模型,这是一个性能不错的中英文混合模型。
3.3 运行ClawdBot容器
现在我们可以启动ClawdBot容器了:
# 运行ClawdBot容器
docker run -d \
--name clawdbot \
-p 7860:7860 \
-v ~/.clawdbot:/app \
-v /var/run/docker.sock:/var/run/docker.sock \
--restart unless-stopped \
ghcr.io/clawdbot/clawdbot:latest
# 查看容器运行状态
docker ps | grep clawdbot
参数说明:
-d:后台运行容器--name clawdbot:给容器命名为clawdbot-p 7860:7860:将容器的7860端口映射到宿主机的7860端口-v ~/.clawdbot:/app:将宿主机的配置目录挂载到容器的/app目录-v /var/run/docker.sock:/var/run/docker.sock:允许容器内访问Docker守护进程--restart unless-stopped:容器退出时自动重启(除非手动停止)
3.4 验证部署
容器启动后,我们需要验证是否部署成功:
# 查看容器日志
docker logs clawdbot
# 检查容器健康状态
docker inspect clawdbot --format='{{.State.Health.Status}}'
如果一切正常,你应该能看到类似下面的日志输出,表明ClawdBot正在运行:
🦞 Clawdbot 2026.1.24-3 (885167d) — Starting up...
Gateway server listening on port 18780
Web UI available at http://0.0.0.0:7860
4. 访问与配置Web界面
ClawdBot提供了一个直观的Web界面,让我们可以方便地进行配置和交互。
4.1 首次访问与设备授权
在浏览器中访问 http://你的服务器IP:7860,你会看到ClawdBot的Web界面。首次访问时,需要进行设备授权。
如果直接访问无法打开界面,可能是因为需要处理pending的授权请求。我们可以在终端中执行以下命令:
# 进入容器内部
docker exec -it clawdbot /bin/bash
# 查看待处理的设备请求
clawdbot devices list
你会看到类似下面的输出,其中包含pending状态的请求:
🦞 Clawdbot 2026.1.24-3 — Your task has been queued; your dignity has been deprecated.
Device Requests:
- ID: abc123def456, Status: pending, Created: 2024-01-01 12:00:00
- ID: xyz789uvw012, Status: pending, Created: 2024-01-01 12:05:00
找到pending的请求ID,然后批准它:
# 批准设备请求
clawdbot devices approve abc123def456
批准后,刷新浏览器页面,应该就能正常访问Web界面了。
4.2 通过Dashboard链接访问
如果上述方法仍然无法访问,可以使用Dashboard链接:
# 获取Dashboard访问链接
docker exec clawdbot clawdbot dashboard
这个命令会输出一个带token的访问链接,类似这样:
🦞 Clawdbot 2026.1.24-3 (885167d) — Your .env is showing; don't worry, I'll pretend I didn't see it.
Dashboard URL: http://127.0.0.1:7860/?token=23588143fd1588692851f6cbe9218ec6b874bb859e775762
No GUI detected. Open from your computer:
ssh -N -L 7860:127.0.0.1:7860 root@你的服务器IP
Then open:
http://localhost:7860/
http://localhost:7860/?token=23588143fd1588692851f6cbe9218ec6b874bb859e775762
如果你在本地电脑上,可以通过SSH端口转发来访问:
# 在本地终端执行(将100.64.232.100替换为你的服务器IP)
ssh -N -L 7860:127.0.0.1:7860 root@你的服务器IP
然后在本地浏览器中访问 http://localhost:7860 即可。
4.3 Web界面概览
成功访问后,你会看到ClawdBot的Web界面,主要包含以下几个部分:
- 聊天界面:主聊天区域,可以在这里与AI助手对话
- 配置面板:左侧的Config菜单,可以配置模型、代理等设置
- 设备管理:管理已连接的设备
- 模型管理:查看和切换可用的模型
界面设计简洁直观,即使没有技术背景也能轻松上手。
5. 模型配置与管理
ClawdBot支持多种模型,默认使用的是vLLM后端。我们可以根据需要配置不同的模型。
5.1 修改配置文件(推荐方式)
最稳定的配置方式是通过修改配置文件。配置文件位于 ~/.clawdbot/clawdbot.json,在容器内映射为 /app/clawdbot.json。
如果你想使用其他模型,可以修改配置文件中的模型配置部分:
{
"agents": {
"defaults": {
"model": {
"primary": "vllm/你的模型名称"
}
}
},
"models": {
"mode": "merge",
"providers": {
"vllm": {
"baseUrl": "http://localhost:8000/v1",
"apiKey": "sk-local",
"api": "openai-responses",
"models": [
{
"id": "你的模型名称",
"name": "你的模型显示名称"
}
]
}
}
}
}
修改配置文件后,需要重启容器使配置生效:
# 重启ClawdBot容器
docker restart clawdbot
# 查看重启后的日志
docker logs clawdbot --tail 50
5.2 通过Web界面配置模型
你也可以通过Web界面来配置模型:
- 在Web界面中,点击左侧的 "Config" 菜单
- 选择 "Models" 选项
- 点击 "Providers" 标签页
- 在这里你可以添加、修改或删除模型提供商
Web界面配置更加直观,适合不熟悉JSON配置的用户。不过需要注意的是,通过界面修改的配置可能会在容器重启后丢失,除非配置被保存到持久化卷中。
5.3 验证模型配置
配置完成后,我们可以验证模型是否可用:
# 进入容器
docker exec -it clawdbot /bin/bash
# 查看可用模型列表
clawdbot models list
如果配置成功,你会看到类似下面的输出:
🦞 Clawdbot 2026.1.24-3 (885167d) — Your task has been queued; your dignity has been deprecated.
Model Input Ctx Local Auth Tags
vllm/Qwen3-4B-Instruct-2507 text 195k yes yes default
这表示模型已经成功加载,可以正常使用了。
6. 常见问题与解决方案
在部署和使用过程中,可能会遇到一些问题。这里整理了一些常见问题及其解决方法。
6.1 端口冲突问题
如果7860端口已经被其他服务占用,你可以修改映射端口:
# 停止并删除现有容器
docker stop clawdbot
docker rm clawdbot
# 使用其他端口重新运行(例如使用8080端口)
docker run -d \
--name clawdbot \
-p 8080:7860 \ # 修改这里
-v ~/.clawdbot:/app \
-v /var/run/docker.sock:/var/run/docker.sock \
--restart unless-stopped \
ghcr.io/clawdbot/clawdbot:latest
6.2 权限问题
如果遇到权限错误,可能是Docker socket的权限问题:
# 检查Docker socket权限
ls -la /var/run/docker.sock
# 如果权限不对,修复它
sudo chmod 666 /var/run/docker.sock
# 或者更好的做法:将用户添加到docker组后重新登录
6.3 容器启动失败
如果容器启动失败,可以查看详细日志:
# 查看完整的容器日志
docker logs clawdbot
# 如果容器已经停止,可以查看最后100行日志
docker logs --tail 100 clawdbot
# 进入容器调试(如果容器能启动但有问题)
docker exec -it clawdbot /bin/bash
常见启动失败原因:
- 端口被占用
- 挂载目录权限不足
- 配置文件格式错误
- 内存不足
6.4 模型加载失败
如果模型加载失败,可以检查:
# 检查vLLM服务是否运行
docker exec clawdbot curl -s http://localhost:8000/v1/models
# 检查模型配置
docker exec clawdbot cat /app/clawdbot.json | python3 -m json.tool
确保模型名称正确,且vLLM服务正常运行。
6.5 性能优化建议
如果感觉响应速度慢,可以尝试以下优化:
- 增加容器资源限制:
docker update clawdbot --memory=8g --memory-swap=16g --cpus=4
-
调整模型并发数: 在配置文件中减少
maxConcurrent的值,降低并发请求数。 -
使用更轻量的模型: 如果硬件资源有限,可以考虑使用参数量更小的模型。
7. 进阶配置与使用
掌握了基本部署后,我们来看看一些进阶的配置和使用技巧。
7.1 使用自定义模型
如果你想使用自己的模型,需要先部署vLLM服务。这里以部署Qwen2.5-7B-Instruct模型为例:
# 首先,运行vLLM服务容器
docker run -d \
--name vllm-server \
--gpus all \ # 如果有GPU的话
-p 8000:8000 \
-v ~/models:/models \
--restart unless-stopped \
vllm/vllm-openai:latest \
--model Qwen/Qwen2.5-7B-Instruct \
--served-model-name Qwen2.5-7B-Instruct \
--max-model-len 8192 \
--tensor-parallel-size 1
然后修改ClawdBot的配置文件,指向这个vLLM服务:
{
"models": {
"providers": {
"vllm": {
"baseUrl": "http://你的服务器IP:8000/v1",
"apiKey": "sk-local",
"models": [
{
"id": "Qwen2.5-7B-Instruct",
"name": "Qwen2.5 7B Instruct"
}
]
}
}
}
}
7.2 配置持久化存储
为了确保数据安全,建议配置持久化存储:
# 创建工作空间目录
mkdir -p ~/clawdbot-workspace
# 重新运行容器,挂载工作空间
docker run -d \
--name clawdbot \
-p 7860:7860 \
-v ~/.clawdbot:/app \
-v ~/clawdbot-workspace:/app/workspace \ # 新增挂载
-v /var/run/docker.sock:/var/run/docker.sock \
--restart unless-stopped \
ghcr.io/clawdbot/clawdbot:latest
这样,AI助手生成的文件、聊天记录等都会保存在 ~/clawdbot-workspace 目录中。
7.3 设置自动备份
为了防止数据丢失,可以设置自动备份:
# 创建备份脚本
cat > ~/backup-clawdbot.sh << 'EOF'
#!/bin/bash
BACKUP_DIR="/home/$(whoami)/clawdbot-backups"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
# 备份配置文件
tar -czf $BACKUP_DIR/clawdbot-config-$DATE.tar.gz ~/.clawdbot
# 备份工作空间(如果有)
if [ -d ~/clawdbot-workspace ]; then
tar -czf $BACKUP_DIR/clawdbot-workspace-$DATE.tar.gz ~/clawdbot-workspace
fi
# 删除7天前的备份
find $BACKUP_DIR -name "*.tar.gz" -mtime +7 -delete
EOF
# 添加执行权限
chmod +x ~/backup-clawdbot.sh
# 添加到crontab,每天凌晨2点备份
(crontab -l 2>/dev/null; echo "0 2 * * * /home/$(whoami)/backup-clawdbot.sh") | crontab -
7.4 监控与日志管理
为了更好地监控ClawdBot的运行状态,可以设置日志轮转和监控:
# 配置Docker日志驱动
cat > /etc/docker/daemon.json << 'EOF'
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
EOF
# 重启Docker服务
sudo systemctl restart docker
# 查看容器日志(实时)
docker logs -f clawdbot
# 查看容器资源使用情况
docker stats clawdbot
8. 总结
通过本指南,我们完成了ClawdBot在Ubuntu 22.04系统上的快速部署。整个过程主要分为以下几个步骤:
- 环境准备:确保系统符合要求,安装并配置Docker
- 快速部署:拉取镜像、创建配置、运行容器,三步完成部署
- 访问配置:通过Web界面访问,完成设备授权
- 模型管理:根据需求配置和切换不同的AI模型
- 问题解决:掌握常见问题的排查和解决方法
- 进阶使用:学习自定义模型、持久化存储等高级功能
ClawdBot的最大优势在于它的简单易用性。你不需要深入了解AI模型的复杂原理,也不需要配置繁琐的环境依赖,只需要几个Docker命令,就能拥有一个完全私有的AI助手。
无论是个人学习、项目开发,还是团队协作,ClawdBot都能提供强大的AI能力支持。而且由于是本地部署,你的所有数据都完全掌握在自己手中,不用担心隐私泄露问题。
现在,你的个人AI助手已经准备就绪,开始探索AI带来的无限可能吧!
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。
更多推荐
所有评论(0)