15 分钟 · 两个容器 · 不需要模型密钥

快速开始

这一页的目标只有一个:让你在本机把它跑起来,并看到一次完整的客服流程。 不需要 GPU,不需要模型密钥,不需要先读完文档。

先说你不需要什么

✓不需要 GPU —— 应用服务器无需 GPU,模型走外部服务
✓不需要模型密钥 —— 体验模式使用模拟模型
✓不需要 Redis —— Postgres 同时承担存储与任务队列
✓不需要 K8s —— Docker Compose 即可
✓不需要 Milvus / S3 —— 体验模式不依赖它们
✓不需要先读文档 —— 一行命令,然后打开浏览器
第一步

环境要求

需要

  • Docker
  • Docker Compose v2

注意

  • Docker Desktop 请选择 Linux 容器模式(最常见的启动失败原因)
  • 方式一首次启动需要联网并编译前端,耗时几分钟
第二步

选择一种启动方式

两种方式效果一致。方式二跳过前端编译,启动更快。

方式一 · 本地构建

在项目根目录执行。首次需要联网并编译前端。

sh nexusdesk quickstart

方式二 · 使用预构建镜像

跳过前端编译,直接拉取已发布的镜像。

NEXUSDESK_IMAGE_REGISTRY=docker.io/groundedcore/ NEXUSDESK_VERSION=latest \ docker compose -f deploy/quickstart/compose.yaml up -d

镜像同时发布在 GHCR 与 Docker Hub,内容一致,按网络情况任选: Docker Hub 对匿名拉取有速率限制,GHCR 没有。

关于版本号:NEXUSDESK_VERSION 需要显式指定, 因为默认值 local 只存在于本地构建的场景。

方式三 · 不克隆仓库

只想试一下,取这一个 Compose 文件就够,在任意目录执行。

curl -fsSLo compose.yaml \ https://raw.githubusercontent.com/GroundedCore/nexusdesk/main/deploy/quickstart/compose.yaml NEXUSDESK_IMAGE_REGISTRY=docker.io/groundedcore/ NEXUSDESK_VERSION=latest \ docker compose -f compose.yaml up -d

⚠️ 不要把体验模式暴露到公网。

体验模式为了方便本机试用,会在请求未携带身份信息时自动注入一个管理身份。 它只适合本机或受信任的内网环境。 如需对外提供服务,请使用 生产部署,并配置真实的身份与访问控制。

第三步

打开后做什么

启动完成后访问 https://localhost:8080,进入会话工作台的 sample-support。

试一句知识问答

发货需要多久?

观察 Agent 如何检索绑定的知识库,并在没有依据时说明无法确认。

试一次工单流程

帮我创建工单

观察 Agent 拟定工单,经人工确认后才真正创建 —— 这是写操作的人工把关机制。

预置了 9 个行业案例。 包含电商零售、企业软件、制造业、教育培训、酒店文旅、房产物业、物流运输、企业人力资源与游戏, 共 9 个知识库与 18 个 Agent,资源名均带 [案例] 前缀。 可在 Agent 管理页用「仅看案例」筛选;案例 Agent 已自动绑定演示方案,可直接试聊。

预置场景使用模拟模型,页面会显示演示标识。 它只用于验证流程,不代表真实模型的回答质量。

关于 HTTPS 与证书告警

体验模式自带一套自签证书,因此通过局域网 IP 或内网域名访问时同样是安全上下文,浏览器的安全上下文限制不会成为障碍。

如果你遇到 crypto.randomUUID 或剪贴板相关的报错, 通常是因为通过非安全上下文(http:// 加非 localhost 地址)访问了页面。 用 https:// 或 localhost 访问即可。

排错

常见问题

如果你的问题不在下面,请告诉我们,我们会补进这一页。

启动失败,提示容器架构不对或进程立刻退出

最常见的原因是 Docker Desktop 没有切换到 Linux 容器模式。 在 Docker Desktop 的托盘菜单中切换到「Switch to Linux containers」后重试。

8080 端口被占用

先确认没有别的服务占用 8080:docker ps 查看是否有残留容器, 或改用其他端口映射后重新启动。

拉取镜像很慢,或提示达到速率限制

Docker Hub 对匿名拉取有速率限制。改用 GHCR 镜像即可: 把 NEXUSDESK_IMAGE_REGISTRY 指向 GHCR 的地址, 两者内容完全一致。

为什么一定要写 NEXUSDESK_VERSION?

因为镜像有多个版本,而 local 这个默认值只对本地构建有意义。 这是一个已知的使用摩擦,我们计划在后续版本中消除它。

没有模型密钥,能试出什么?

能验证完整流程:知识检索、工具调用、工单拟定与人工确认、会话接管。 体验模式使用模拟模型,回答内容是预置的,因此不能用来评估真实模型的回答质量。 要评估真实效果,需要在模型网关中配置一个真实连接。

浏览器提示证书不安全,可以继续吗?

可以。这是体验模式自带的自签证书,仅用于本机访问。 按上方的说明导入 /data/tls/ca.crt 后告警会消失。

数据存在哪里?删掉容器数据会丢吗?

体验模式使用 Compose 具名卷持久化数据。 执行 docker compose down 不会删除数据, 加上 -v 参数会删除数据卷,请谨慎使用。

能直接用在内网生产环境吗?

不能直接用体验模式的配置。请参考生产部署: 配置角色 Token、外部 PostgreSQL,并按需接入 Milvus 与对象存储。

跑起来之后

L2

配一个自己的 Agent

配置模型方案 → 建知识库 → 配 Agent → 发布 → 试聊。参见仓库中的平台使用说明。

平台使用说明 →

L3

部署到生产环境

角色 Token、外部 PostgreSQL、Milvus 与对象存储、HTTPS 与备份。

生产部署 →

L4

接入自己的系统

开放平台:应用与密钥、签名 Webhook、SSE 流式输出、幂等键与调用日志。

开放平台文档 →