首页 > 教程攻略 > ai教程 >Docker极速部署AstrBot:打造专属全平台AI聊天助手

Docker极速部署AstrBot:打造专属全平台AI聊天助手

来源:互联网 时间:2026-07-28 07:29:22

Docker极速部署AstrBot:打造专属全平台AI聊天助手

  • 一、AstrBot 介绍
    • 1.1 AstrBot项目简介
    • 1.2 AstrBot核心特点
  • 二、本次实践规划
    • 2.1 本地环境规划
    • 2.2 本次实践介绍
  • 三、本地环境检查
    • 3.1 检查Docker服务状态
    • 3.2 检查Docker版本
    • 3.3 检查docker compose 版本
  • 四、拉取AstrBot 镜像
  • 五、部署AstrBot 服务
    • 5.1 创建部署目录
    • 5.2 创建AstrBot容器
    • 5.3 查看AstrBot 容器状态
    • 5.4 检查容器日志
  • 六、访问AstrBot 服务
    • 6.1 访问AstrBot 初始页
    • 6.2 登录AstrBot
    • 6.3 配置AI模型
    • 6.4 对话测试
  • 七、总结

如果你是AI聊天机器人的重度用户,或者正在寻找一个能同时对接QQ、微信、飞书、钉钉等多个平台的统一方案,AstrBot 绝对值得关注。它完全开源,支持大模型对话、多模态、插件扩展,甚至还能跑Agent沙箱——听起来是不是有点“万能工具箱”的意思?下面直接进入正题,看看怎么用Docker把它跑起来。

一、AstrBot 介绍

1.1 AstrBot项目简介

AstrBot 是一个开源的、全平台AI聊天机器人框架,核心目标就是让用户能快速搭建一个属于自己的智能助手。它支持对接主流的大语言模型,也兼容Dify、扣子这些Agent编排平台,并且自带WebUI管理界面。说白了,你不需要从零写代码,配置好环境和模型,就能得到一个能对话、能查资料、能执行脚本的机器人。

1.2 AstrBot核心特点

  1. 完全免费开源

    :项目代码公开透明,遵循开源协议,支持社区共建与自由定制。
  2. 强大的 AI 交互能力

    :全面支持大语言模型对话、多模态交互、Agent 编排、MCP 协议、技能调用、知识库检索、人设配置及自动上下文压缩。
  3. 广泛的第三方平台对接

    :无缝兼容 Dify、阿里云百炼、扣子(Coze)等主流 Agent 开发与编排平台。
  4. 全渠道多平台适配

    :原生支持 QQ、企业微信、飞书、钉钉、微信公众号、Telegram、Slack 等各大主流社交与办公平台。
  5. 丰富的插件生态

    :拥有超过 1000 个现成插件,涵盖各类实用场景,支持一键安装以极速扩展功能。
  6. 安全的 Agent 沙箱机制

    :提供隔离的运行环境,确保代码执行与 Shell 调用的安全性,并支持会话级别的资源复用。
  7. 便捷的 WebUI 管理

    :配备直观的网页用户界面,极大简化了机器人的日常配置与运维管理工作。
  8. 现代化的 Web 聊天界面

    :内置独立的 Web 聊天 UI,自带 Agent 沙箱环境与联网搜索功能,开箱即用。
  9. 国际化(i18n)支持

    :系统内置多语言切换能力,能够轻松满足全球不同地区用户的本地化使用需求。

二、本次实践规划

2.1 本地环境规划

hostnameIP地址操作系统版本Docker版本部署项目备注
jeven192.168.3.88Ubuntu 24.04.2 LTS28.5.0AstrBot——

2.2 本次实践介绍

这次我们使用一台Ubuntu 24.04服务器,通过Docker容器部署AstrBot v4.25.1版本,并配置WebUI管理与AI模型接入。整个流程从环境检查到最终对话测试,会一步步走完,确保你也能在自己的机器上复现。

三、本地环境检查

3.1 检查Docker服务状态

首先确认Docker是否在运行。执行 systemctl status docker,看到类似下面的输出就说明一切正常:

root@jeven:~# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
   Active: active (running) since Thu 2026-02-05 00:27:40 CST; 1s ago
TriggeredBy: ● docker.socket
   Docs: https://docs.docker.com
 Main PID: 841698 (dockerd)
   Tasks: 65
   Memory: 73.5M (peak: 77.1M)
   CPU: 975ms
   CGroup: /system.slice/docker.service

3.2 检查Docker版本

root@jeven:~# docker -v
Docker version 28.5.0, build 887030f

3.3 检查docker compose 版本

root@jeven:~# docker compose version
Docker Compose version v2.39.4

一切就绪,Docker和Compose版本都符合要求,接下来就可以直接拉镜像了。

四、拉取AstrBot 镜像

执行 docker pull soulter/astrbot:v4.25.1,镜像大小在几百兆,根据网络情况等待几分钟即可:

root@jeven:~# docker pull soulter/astrbot:v4.25.1
v4.25.1: Pulling from soulter/astrbot
57fb71246055: Already exists
797809503061: Already exists
759e0c85a86e: Already exists
b33ff618953d: Already exists
91e5207f7536: Pull complete
bff77dc5fbe1: Pull complete
a35c81515acb: Pull complete
d5fb4df24609: Pull complete
Digest: sha256:d26eacf8aba492ae09ef781038ceea08a7c6f3bffbe222dbd8679ce642ed5c5f
Status: Downloaded newer image for soulter/astrbot:v4.25.1
docker.io/soulter/astrbot:v4.25.1

五、部署AstrBot 服务

5.1 创建部署目录

先创建数据持久化目录,并赋予权限,方便后续容器读写:

mkdir -p /data/astrbot/data && cd /data/astrbot/
chmod -R 777 /data/astrbot/

5.2 创建AstrBot容器

这里有两种方式,直接运行一条 docker run 命令,或者用docker-compose。为了后期管理方便,推荐用Compose。先创建 docker-compose.yaml 文件:

version: '3'
services:
  astrbot:
    image: soulter/astrbot:v4.25.1
    container_name: astrbot
    restart: always
    ports:
      - "6185:6185"   # 必选,AstrBot WebUI 端口
      - "6199:6199"   # 可选, QQ 个人号 WebSocket 端口
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - ./data:/AstrBot/data
      - /etc/localtime:/etc/localtime:ro

然后启动容器:

docker compose up -d

5.3 查看AstrBot 容器状态

root@jeven:/data/astrbot# docker compose ps
WARN[0000] /data/astrbot/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to a void potential confusion
NAME                IMAGE                     COMMAND             SERVICE             CREATED             STATUS              PORTS
astrbot             soulter/astrbot:v4.25.1   "python main.py"    astrbot             2 minutes ago       Up 2 minutes        0.0.0.0:6185->6185/tcp, [::]:6185->6185/tcp, 0.0.0.0:6199->6199/tcp, [::]:6199->6199/tcp

看到“Up”状态,说明容器已经成功运行。

5.4 检查容器日志

docker compose logs

日志里会输出WebUI的访问地址和默认登录密码,记下来,后面要用。

六、访问AstrBot 服务

6.1 访问AstrBot 初始页

在浏览器输入 http://192.168.3.88:6185,就能看到AstrBot的WebUI初始页面:

6.2 登录AstrBot

首次登录需要密码,这个密码就在刚才的容器日志里。用 docker compose logs 查看,找到类似 WebUI password: xxxxxx 的那一行:

docker compose logs

输入密码后,即可进入管理后台:


6.3 配置AI模型

在后台找到“模型配置”菜单,添加你需要的AI模型(比如OpenAI、通义千问等),填入API Key和模型名称:

6.4 对话测试

配置完成后,进入“聊天”界面,即可开始与机器人对话:

如果一切正常,你应该能看到模型返回的回复。至此,AstrBot的Docker部署流程就全部完成了。

七、总结