本文最后更新于 2025-10-11,文章内容可能已经过时。

CentOS Stream 9 安装 Docker、LangBot 和 NapCatQQ 完整指南

前言

在开始之前,请确保理解每个命令的含义,学会查看报错信息,并善用AI工具解决问题。CentOS 7已逐渐被淘汰,升级到CentOS Stream 9能获得更好的兼容性和新特性支持。

1. 安装Docker

系统准备和依赖安装

# 更新系统包索引
sudo dnf update -y

# 安装Docker所需依赖
sudo dnf install -y dnf-plugins-core yum-utils device-mapper-persistent-data lvm2

配置Docker仓库

# 添加阿里云镜像源(推荐国内用户使用)
sudo dnf config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装Docker引擎

# 安装Docker及相关组件
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

启动和验证Docker

# 启动Docker服务并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
sudo systemctl status docker

# 验证安装
docker --version

配置镜像加速器(国内用户)

# 创建Docker配置文件
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com"
  ]
}
EOF

# 重启Docker服务使配置生效
sudo systemctl restart docker

2. 安装Git

# 安装Git版本控制工具
sudo dnf install git -y
git --version

3. Docker安装LangBot

下载和配置LangBot

# 克隆LangBot仓库
git clone https://github.com/RockChinQ/LangBot
cd LangBot

重要提示​:如果主机位于中国大陆,建议修改docker-compose.yaml文件中的镜像源为国内镜像:

# 将镜像名称改为
docker.langbot.app/langbot-public/rockchin/langbot:latest

启动LangBot容器

# 启动LangBot服务
docker compose up

访问和初始化

  • WebUI访问地址​:http://127.0.0.1:5300

  • 端口映射​:5300端口用于Web界面,2280-2290端口用于OneBot协议适配器

  • 防火墙设置​:确保放行上述端口

容器管理

# 停止容器(Ctrl+C)
# 重新启动容器
docker start langbot

4. 安装NapCatQQ

使用安装脚本

# 下载并运行NapCat安装脚本
curl -o napcat.sh https://github.moeyy.xyz/https://raw.githubusercontent.com/NapNeko/napcat-linux-installer/refs/heads/main/install.sh && sudo bash napcat.sh

解决依赖问题

如果安装过程中出现错误,可能需要安装开发工具:

# 安装开发工具链
sudo dnf groupinstall "Development Tools" -y
g++ --version

# 清理旧安装并重试
rm -rf /root/napcat
# 重新运行安装命令

图形环境配置

NapCat需要X11显示服务器:

# 安装Xvfb虚拟显示服务器
sudo dnf install xorg-x11-server-Xvfb -y

# 启动虚拟显示并设置环境变量
Xvfb :1 -screen 0 1x1x8 +extension GLX +render > /dev/null 2>&1 &
export DISPLAY=:1

使用tmux后台运行

# 安装tmux
sudo dnf install tmux -y

# 创建tmux会话运行QQ
tmux new -s qq
export DISPLAY=:1
LD_PRELOAD=./libnapcat_launcher.so qq --no-sandbox

# 退出tmux会话(保持后台运行):Ctrl+B, 然后按D

# 重新进入tmux会话
tmux attach -t qq

WebUI访问

  • NapCat管理界面​:http://127.0.0.1:6099/webui/

  • 通过Web界面扫码登录QQ

5. 配置NapCat连接LangBot

添加WebSocket客户端

  1. 打开NapCat WebUI(端口6099)

  2. 点击"添加网络配置"

  3. 新建WebSocket客户端

  4. 在URL栏填入:ws://127.0.0.1:2280/ws

  5. 保存并启动客户端

6. LangBot对接NapCat

配置机器人适配器

  1. 打开LangBot WebUI(端口5300)

  2. 点击"机器人" → "添加"

  3. 平台/适配器选择"OneBot v11"

  4. 提交配置

  5. 启用并保存设置

验证连接

  • 查看NapCat日志,确认与LangBot服务端连接成功

  • 在NapCat中应能看到连接建立的消息

7. LangBot模型配置

进入LangBot WebUI的模型配置页面,可以:

  • 添加多个AI模型

  • 配置模型参数和API密钥

  • 在流水线中选择使用的模型

8. LangBot流水线配置

流水线决定了消息处理的流程:

  • 配置消息处理逻辑

  • 设置触发条件和响应规则

  • 绑定具体的AI模型

故障排除和优化建议

常见问题解决

  1. Docker安装失败​:检查网络连接,尝试使用国内镜像源

  2. 端口冲突​:确保5300、6099等端口未被其他程序占用

  3. QQ登录问题​:使用WebUI扫码登录更稳定

性能优化

  • 为Docker配置合适的资源限制

  • 定期清理无用的镜像和容器

  • 监控系统资源使用情况

安全建议

  • 修改默认端口增强安全性

  • 配置防火墙规则限制访问IP

  • 定期更新组件到最新版本

完成以上步骤后,您就成功在CentOS Stream 9上搭建了完整的机器人框架,可以实现智能对话和消息自动回复等功能。