Windows 从解压到首次登录
Windows 安装优先使用安装包内的 install.cmd:完整解压后双击,在 Windows 权限弹窗中允许管理员操作,随后按提示安装。安装完成后用 akn 管理服务,不要长期双击主程序运行。
flowchart LR
A[双击 install.cmd] --> B[核对 x64 / arm64 包]
B --> C[运行安装脚本]
C --> D[Windows SCM 托管服务]
D --> E[浏览器打开 5800]
1. 选择正确的包
在“设置 → 系统 → 系统信息”或 PowerShell 中确认架构:
[System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture
X64 服务器使用 win-x64 发布包,Arm64 服务器使用 win-arm64 发布包。同时准备 .NET 7 ASP.NET Core Runtime;不需要安装 SDK、Node.js 或 npm。
2. 校验并解压
在下载目录核对 SHA256:
$package = Get-ChildItem . -Filter 'AKStream.Next-*-win-x64.zip' | Select-Object -First 1
Get-FileHash $package.FullName -Algorithm SHA256
与同一 Release 的校验文件比较后解压,并进入包根目录。目录用途见 安装包结构。
3. 双击安装
- 完整解压 ZIP,打开包根目录。
- 双击 install.cmd,在 Windows 管理员权限弹窗中选择允许。
- 按安装窗口中的提示确认安装选项。无需先修改 PowerShell 执行策略,也无需手工进入脚本目录。
- 等待健康检查和安装结果。失败时窗口保留错误,成功后显示完成信息。
入口仅对本次安装进程设置脚本放行,不永久改变系统安全设置。若取消管理员权限弹窗,安装不会执行。
依赖自动安装优先使用已核验的国内源;MariaDB 使用中科大镜像,Nginx 使用华为云镜像。当前 MySQL LTS Windows MSI、FFmpeg 静态包和 ASP.NET Core Runtime 暂无已核验的稳定国内镜像,分别回退 Oracle、gyan.dev 和微软官方源。固定 MSI/ZIP 校验 SHA256,不依赖 WinGet 下载这些文件。下载失败会返回选择菜单,可重试、指定已有 ffmpeg.exe 或暂时跳过。Windows ARM64 使用该 x64 构建时会检查系统兼容运行能力;也可指定原生 ARM64 FFmpeg。
4. 命令行安装与帮助
在解压包根目录,CMD 或 PowerShell 都可以运行:
.\install.cmd
需要直接调用脚本时,在管理员 PowerShell 中执行(注意 .\ 前缀及参数空格):
powershell.exe -NoProfile -ExecutionPolicy Bypass -File ".\Deploy\windows\akstream-next.ps1" install -PackageRoot "."
查看高级选项:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File ".\Deploy\windows\akstream-next.ps1" help
默认位置:
- 程序:
%ProgramFiles%\AKStream.Next - 配置:
%ProgramData%\AKStream.Next\Config - 数据:
%ProgramData%\AKStream.Next - 主服务:
AKStream.Next - Agent 服务:
AKStream.Next.NodeAgent
脚本会把两个服务设置为自动启动,并为主服务配置失败后重启。需要无人值守时可以增加 -Yes,但不会跳过架构、运行时和健康检查。
5. 打开首次配置页
查看一次性安装码:
Get-Content "$env:ProgramData\AKStream.Next\Config\.akstream-next-setup-token"
Invoke-RestMethod http://127.0.0.1:5800/health
浏览器打开 http://<服务器IP>:5800/。如果远程电脑无法访问,检查 Windows Defender 防火墙是否允许实际配置的 WebUI/API 端口;不要为了省事关闭整个防火墙。
6. 检查和管理服务
安装器将 %ProgramData%\AKStream.Next\Tools 注册到系统 PATH,并通知当前桌面会话重新读取环境变量。CMD 和 PowerShell 都直接输入 akn,无需写扩展名。
安装前已打开的终端仍可能持有旧 PATH。Windows Terminal 应关闭整个应用再重开;通过 SSH 或 SYSTEM 后台安装时,已有桌面登录会话可能需要注销后重新登录。当前 CMD 也可立即加载命令目录:
set "PATH=%PATH%;%ProgramData%\AKStream.Next\Tools"
akn status
在新终端中直接使用全局命令:
akn status
Get-Service AKStream.Next, AKStream.Next.NodeAgent
启停命令需要管理员权限:
akn restart
akn stop
akn start
日志先从 WebUI“系统管理 → 日志与审计”查看;主进程无法启动时再结合 Windows 事件查看器、服务状态和配置目录排查。
7. 升级与恢复验收
升级使用新包中的脚本重新执行 install -PackageRoot <新包目录>。安装器会暂存新目录并保留上一版本备份,但数据库、配置、安全密钥和录像仍需独立备份。
维护窗口验证 SCM 自动拉起:
akn verify-recovery
该命令会强制终止主进程,不是普通健康检查。
8. 卸载
akn uninstall
命令会交互选择“保留数据”或“完全清理”,完整清理会再次确认。-Purge -Yes 仅用于已明确授权的无人值守操作,会删除程序、配置和数据,操作不可逆。