跟着 13 张真实截图完成 10 步首次配置
首次配置会一次性确定这台 AKStream.Next 的身份、数据库、模块、媒体服务、网络、存储、管理员和 HTTPS。不要凭感觉连续点“下一步”:每一页都要看到本节写出的完成结果,再进入下一页。
下面所有图片均由当前版本真实 FirstRunSetupView 页面在浏览器中运行后截取,使用隔离测试数据;不是重新绘制的示意界面,也不包含真实安装码、密码或 Secret。
先看 10 步分别做什么
| 步骤 | 这一页决定什么 | 通过后你应看到什么 |
|---|---|---|
| 1 | 验证正在配置正确服务器 | 安装码通过,并显示本机系统、CPU、内存和软件探测 |
| 2 | 集群、节点和部署形式 | 名称、稳定 ID、当前机器职责都已确定 |
| 3 | 业务数据库 | 数据库连接测试成功;同名库处理方式明确 |
| 4 | 运行性能 | 根据真实硬件选择轻量、均衡或高并发方案 |
| 5 | 功能模块 | 只开启当前需要的设备协议、录像、RTC 等能力 |
| 6 | MediaServer 与 FFmpeg | 可执行文件、配置、API 和 Secret 都已验证 |
| 7 | 访问地址与端口 | 终端地址、对外 IP、SIP/RTP/RTC 端口不冲突 |
| 8 | 录像、日志和管理员 | 录像盘可写,空间保护合理,管理员密码两次一致 |
| 9 | HTTPS 与证书 | 确定 Nginx/Kestrel 入口、证书来源和最终访问地址 |
| 10 | 预检查和最终提交 | 阻断项为 0,防火墙清单已核对,再执行安装 |
开始前准备
| 需要准备 | 从哪里取得 | 注意事项 |
|---|---|---|
| 本机安装码 | 安装脚本结束时的终端输出,或服务器 .akstream-next-setup-token 文件 |
它不是后台密码,不要发到群聊、工单或截图中 |
| 数据库信息 | MySQL/PostgreSQL/SQL Server 管理员或 DBA | 需要目标库建库、建表和结构变更权限 |
| 部署身份 | 实施方案 | 先决定单机一体化,还是独立主控/媒体节点 |
| 媒体文件 | 安装包内 MediaServer、config.ini 和 FFmpeg,或服务器上的已有路径 |
路径必须由服务器验证,不能填本地电脑路径 |
| 网络规划 | 域名、公网/NAT 地址、防火墙或安全组 | RTC、SIP、RTP、TURN 使用不同端口 |
| 录像盘 | 已挂载的数据盘目录 | 不要把系统盘临时目录当作生产录像根 |
| 首个管理员 | 由平台负责人保管的用户名和新密码 | 不要复用数据库密码或设备密码 |
Linux 安装码通常位于 /etc/akstream-next/Config/.akstream-next-setup-token;Windows 通常位于 %ProgramData%\AKStream.Next\Config\.akstream-next-setup-token。macOS 请使用安装脚本最后显示的 Config 目录。安装过程中不要把真实密码、Secret 或安装码放进截图。
第 1 步:验证本机安装码

| 说明顺序 | 在页面上做什么 | 正确结果 |
|---|---|---|
| 1 | 确认左侧当前是“开始安装”,顶部显示第 1/10 步 | 没有跳过前置验证 |
| 2 | 从 AKStream.Next 所在服务器读取安装码并粘贴 | 输入框有值,但文档和截图中不保留真实内容 |
| 3 | 点击“验证并读取探测结果” | 页面显示安装码已验证,并列出系统、架构、CPU、内存、Nginx、MediaServer 和 FFmpeg 探测 |
本步完成标准
出现绿色“安装码已验证”,并且探测到的操作系统和 CPU 架构与当前服务器一致。此时“保存本步并继续”才可以使用。
不能继续时
- 提示安装码错误:确认读取的是当前服务器文件,不是后台管理员密码。
- 提示安装码已轮换:重新读取文件;已填写的后续草稿会保留。
- 系统或架构明显不对:停止配置,检查浏览器是否连到了另一台服务器或旧端口。
第 2 步:设置集群、节点和部署形式

| 说明顺序 | 在页面上填写或选择什么 | 推荐与含义 |
|---|---|---|
| 1 | 集群名称、集群 ID | 名称给人看;同一集群全部节点的 ID 必须完全一致,例如 hz-prod |
| 2 | 节点名称、节点 ID | 节点 ID 是稳定身份,例如 node-01,上线后不要普通修改 |
| 3 | 选择一体化、独立主控、独立媒体节点或自定义 | 第一次单机安装通常选择“一体化部署” |
| 4 | 只有自定义部署才调整进程职责 | 不理解主控、媒体节点、协议网关和 RTC 职责时保持自动选择 |
本步完成标准
四个名称/ID 非空,部署形式与现场拓扑一致。独立媒体节点还必须填写可访问的外部主控 API 地址。
不能继续时
- 不确定 ClusterId:先查看实施方案;不要为同一套系统的每台机器创建不同集群 ID。
- 只是单机试用:选择一体化部署,不需要手工勾职责。
- 计划以后扩容:单机仍可先用一体化,扩容时再加入独立媒体节点。
第 3 步:选择并测试数据库

| 说明顺序 | 在页面上填写或选择什么 | 推荐与含义 |
|---|---|---|
| 1 | 选择 MySQL、PostgreSQL、SQL Server 或 SQLite | 常规生产优先使用 MySQL;SQLite 更适合小规模或验证环境 |
| 2 | 数据库主机、端口和数据库名 | MySQL 默认端口 3306;数据库名留空时使用 AKStreamNext |
| 3 | 数据库用户名和密码 | 使用专用账号;安装器准备的 MySQL 仍需要重新输入当时设置的密码 |
| 4 | 点击“测试数据库” | 必须得到成功结果,不能只确认端口能连接 |
本步完成标准
页面显示数据库测试成功。如果目标库不存在,已勾选自动创建;如果检测到同名数据库,已经选择新库名,或明确确认删除同名库并重建。
不能继续时
- 连接拒绝:从 AKStream.Next 服务器测试数据库 IP 和端口,不要用自己的电脑代替。
- 权限不足:账号至少需要建库、建表和结构变更权限。
- 检测同名库:首次安装不会静默复用。要保留旧数据就改数据库名;确认无用才执行删除重建。
- 修改过任何连接字段后必须重新测试。
第 4 步:按服务器硬件选择性能方案

| 说明顺序 | 在页面上核对或选择什么 | 推荐与含义 |
|---|---|---|
| 1 | 核对系统、架构、CPU 和内存探测 | 与真实服务器不一致时返回第 1 步检查目标实例 |
| 2 | 选择轻量、均衡、高并发或自定义 | 初次安装优先使用标记为“本机推荐”的方案 |
| 3 | 查看采样、心跳和 GC 内存上限 | 方案会自动回填;没有测量依据不要单独修改 |
| 4 | 决定是否保存宿主调优目标 | 有权限的部署组件会应用并回读;无权限时应列为外部待办 |
本步完成标准
已经选中一个明确方案,硬件信息真实,GC 内存上限合理。新手通常不需要展开“高级周期参数”。
不能继续时
- 小内存服务器不要选择高并发。
- 容器部署要同时检查容器内存限制,不能只看宿主总内存。
- 宿主调优应用失败不应伪装成功;记录页面给出的外部操作清单。
第 5 步:只开启当前需要的功能模块

| 说明顺序 | 在页面上选择什么 | 什么时候开启 |
|---|---|---|
| 1 | 托管 MediaServer | 一体化服务器或独立媒体节点开启;独立主控可以关闭 |
| 2 | 录像与存储 | 需要平台本地录像时开启;开启后第 8 步必须选择录像根 |
| 3 | GB28181 服务端/客户端和 ONVIF | 只开启现场真实使用的接入或级联协议 |
| 4 | RTC、AI、GPS | 没有当前需求先关闭;这些模块以后可在系统管理中开启 |
本步完成标准
页面底部显示的已选模块与项目范围一致。模块需要的进程职责已经自动补齐,没有“启用了功能但没有执行节点”的冲突。
不能继续时
- 不知道是否需要 GB28181 客户端:只有本平台要注册到上级平台时才开启。
- 只是观看摄像机:不需要因此开启 RTC。
- AI 服务地址和 Key 可以安装后配置,不要阻塞基础视频平台上线。
启用“录像智能检索”后,选择 Chinese-CLIP RN50、ViT-B/16 或 SigLIP2 及推理后端。向导会同时保留录像和托管 MediaServer;功能授权可在安装后激活。第 8 步的 Qdrant 目录默认从首个录像根目录派生,也可用服务器目录工具选择持久化路径。模型空间和后端说明见 录像智能检索。
第 6 步:验证 MediaServer 和 FFmpeg

| 说明顺序 | 在页面上填写或选择什么 | 推荐与含义 |
|---|---|---|
| 1 | 使用已有 MediaServer、本地源码或在线编译 | 安装包已有可执行文件时优先直接验证 |
| 2 | MediaServer 可执行文件、config.ini 和工作目录 |
使用“选择并验证”,路径属于服务器而不是浏览器电脑 |
| 3 | FFmpeg 可执行文件 | 必须验证成功;常见 Linux 路径是 /usr/bin/ffmpeg |
| 4 | MediaServer API 地址和 Secret | 本机常用 http://127.0.0.1:18080;Secret 留空可生成强随机值 |
本步完成标准
MediaServer、config.ini 和 FFmpeg 均通过验证,API 地址能访问。若选择编译,必须等待任务成功并看到产物路径自动回填。
不能继续时
- 页面提示路径不存在:点击服务器路径选择器重新选择,不要手写猜测路径。
- 编译依赖缺失:按页面给出的当前系统安装命令补齐,再“重新探测”。
- 国内网络下载失败:选择 Gitee 国内镜像;国际网络可选择 GitHub。
- MediaServer 编译中不能进入下一步,这是防止保存半成品路径。
第 7 步:填写访问地址和端口

| 说明顺序 | 在页面上填写什么 | 推荐与含义 |
|---|---|---|
| 1 | 内部 HTTP 端口和终端实际访问地址 | 浏览器、App 和 SDK 使用终端地址;反代场景通常是 HTTPS 域名 |
| 2 | RTC/SIP 对外 IP | 可以自动探测,但 NAT 环境必须确认它与真实映射入口一致 |
| 3 | RTC、ICE 和 TURN 端口 | 只在开启 RTC 时需要;TURN 是端口范围,不是一个端口 |
| 4 | SIP 端口和 RTP 接收方式 | 常规优先“每路分配独立端口”;固定 10000 需要设备和 SSRC 明确兼容 |
本步完成标准
终端地址能从真实用户网络访问,对外 IP 是设备/浏览器真正能到达的入口;各端口和范围没有重叠。第 10 步会根据这里的实际值生成防火墙清单。
不能继续时
- 页面能开但视频不通:Web 端口正常不代表 RTP、RTC 或 TURN 已放行。
- NAT 场景不要填写
127.0.0.1或只在服务器内部可见的容器地址。 - 固定 10000 不是简单减少开放端口;不了解设备兼容时保持逐路动态。
第 8 步:设置录像、日志和管理员


| 说明顺序 | 在页面上填写什么 | 推荐与含义 |
|---|---|---|
| 1 | 选择并验证录像根目录 | 使用独立数据盘;系统会检查挂载、读写权限和磁盘身份 |
| 2 | 低空间保护 | 示例:低于 10 GiB 或 5% 时停止新录像 |
| 3 | 日志级别、保留天数和单文件大小 | 生产通常使用 Information 或 Warning,并设置明确保留期 |
| 4 | 首个管理员用户名、显示名称和两次密码 | 两次密码必须一致;不要复用数据库、设备或 MediaServer 密码 |
本步完成标准
开启录像时至少有一个已验证录像根,空间阈值能保护系统盘;管理员账号非空且两次密码一致。关闭录像模块时可以没有录像根。
不能继续时
- 录像根被拒绝:检查它是否是系统盘、只读挂载、重复物理磁盘或运行账号无权限。
- 管理员密码错误:两次输入要完全一致,不要复制包含首尾空格的内容。
- 日志保留不是越长越好,需要结合磁盘容量和审计要求。
第 9 步:确定 HTTPS 入口和证书


| 说明顺序 | 在页面上选择或填写什么 | 推荐与含义 |
|---|---|---|
| 1 | 网络场景和终端最终访问地址 | 选择纯内网、公网域名直达或 NAT 映射;地址必须与实际入口一致 |
| 2 | Nginx、Kestrel 或暂不启用 HTTPS | 生产通常由 Nginx 接收 443;禁用只适合本机或可信内网调试 |
| 3 | Let's Encrypt、已有证书或安装后配置 | HTTP-01 需要域名解析正确且公网 80 能到达当前入口 |
| 4 | 重新探测 Nginx,按需配置 SMTP | Nginx 模式完成时会执行 nginx -t、Reload 和 HTTPS 检查;邮件可跳过 |
本步完成标准
公网部署已经确定域名、对外 IP、HTTPS 入口和证书来源;纯内网部署也明确知道当前访问边界。Nginx 的实际进程、配置和站点 include 已被探测确认。
不能继续时
- Let's Encrypt 不可选:先选择 Nginx HTTPS 入口。
- HTTP-01 失败:检查域名解析、公网 80、防火墙以及是否被其他站点截获。
- 浏览器使用 HTTPS、后端仍看到 HTTP:反向代理必须正确覆盖
X-Forwarded-Proto。 - RTC 媒体端口不会因为配置了 443 反向代理就自动打通。
第 10 步:预检查并完成安装


| 说明顺序 | 在页面上做什么 | 正确结果 |
|---|---|---|
| 1 | 逐项复核集群、数据库、模块、媒体、网络、存储和 HTTPS 摘要 | 显示值与前 9 步一致;密码、Secret 和密钥不会回显 |
| 2 | 点击“执行数据库、路径、权限、端口与配置预检查” | 红色阻断项为 0;黄色内容是提醒,需要阅读但不一定阻止安装 |
| 3 | 核对防火墙/安全组清单 | 清楚每个端口、协议、来源网络和用途,只放行真正需要的入口 |
| 4 | 勾选最终确认并点击“完成安装并启动 AKStream.Next” | 页面进入安装与重启状态,最终自动跳到登录页 |
本步完成标准
预检查为绿色,阻断项为 0,最终确认已勾选。提交后等待数据库初始化、配置写入、Nginx/证书处理和服务重启,不要重复点击。
不能继续时
- 红色错误:按具体字段返回相应步骤修复,再重新执行完整预检查。
- 端口自动避让:确认调整后的值可被设备和防火墙接受,最终清单以调整后端口为准。
- 提交连接中断:服务重启时连接断开可能是正常现象,让页面继续探测健康状态,不要立即再次提交。
- 重新配置模式还会要求确认清空数据库业务数据;这不是普通改配置。
配置完成后马上检查
- 浏览器进入登录页后,使用第 8 步创建的管理员账号登录。
- 顶部节点和 MediaServer 状态正常,版本与安装包一致。
- 在真实用户网络打开终端地址,确认 HTTPS 没有证书或混合内容错误。
- 按 接入第一路视频 完成一条真实设备或 RTSP 预览。
- 开启录像时做一次手工录像并在 录像中心 查到可播放文件。
重新配置不是普通修改
正常上线后修改端口、录像、模块或 HTTPS,应进入系统管理中的对应配置页面。只有需要重新执行首次安装、重建数据库业务数据时,才停止服务并按安装脚本说明进入重新配置。
重新配置的最终确认会清空数据库中的 AKStream.Next 业务数据;磁盘录像文件可以保留并重新扫描。执行前必须完成数据库、Config、签名材料和必要文件备份。
下一步
- 还没有安装服务:先看 选择安装方式。
- 已完成向导:进入 接入第一路视频。
- 要上线生产:完成 上线前 6 项安全设置。