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界面来配置模型:

  1. 在Web界面中,点击左侧的 "Config" 菜单
  2. 选择 "Models" 选项
  3. 点击 "Providers" 标签页
  4. 在这里你可以添加、修改或删除模型提供商

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

常见启动失败原因:

  1. 端口被占用
  2. 挂载目录权限不足
  3. 配置文件格式错误
  4. 内存不足

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 性能优化建议

如果感觉响应速度慢,可以尝试以下优化:

  1. 增加容器资源限制
docker update clawdbot --memory=8g --memory-swap=16g --cpus=4
  1. 调整模型并发数: 在配置文件中减少maxConcurrent的值,降低并发请求数。

  2. 使用更轻量的模型: 如果硬件资源有限,可以考虑使用参数量更小的模型。

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系统上的快速部署。整个过程主要分为以下几个步骤:

  1. 环境准备:确保系统符合要求,安装并配置Docker
  2. 快速部署:拉取镜像、创建配置、运行容器,三步完成部署
  3. 访问配置:通过Web界面访问,完成设备授权
  4. 模型管理:根据需求配置和切换不同的AI模型
  5. 问题解决:掌握常见问题的排查和解决方法
  6. 进阶使用:学习自定义模型、持久化存储等高级功能

ClawdBot的最大优势在于它的简单易用性。你不需要深入了解AI模型的复杂原理,也不需要配置繁琐的环境依赖,只需要几个Docker命令,就能拥有一个完全私有的AI助手。

无论是个人学习、项目开发,还是团队协作,ClawdBot都能提供强大的AI能力支持。而且由于是本地部署,你的所有数据都完全掌握在自己手中,不用担心隐私泄露问题。

现在,你的个人AI助手已经准备就绪,开始探索AI带来的无限可能吧!


获取更多AI镜像

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

更多推荐