DeepSeekDSH
独立社区指南与 DeepSeek 无隶属关系。官方源码快照

EADDRINUSE: address already in use 127.0.0.1:3080

解决 DeepSeek Harness 的 127.0.0.1:3080 端口被占用:查找监听进程、释放或更换端口,并区分 EADDRINUSE 与 Windows 保留端口导致的启动失败。

本页内容

先确认是不是 EADDRINUSE: address already in use 127.0.0.1:3080

这页只处理 EADDRINUSE: address already in use 127.0.0.1:3080 这一类报错。不同系统或 Node.js 版本可能多几个单词,但核心错误码或句式应该一致。

EADDRINUSE: address already in use 127.0.0.1:3080
EADDRINUSE
address already in use
port 3080 is already in use
EACCES :3080

搜索或求助时尽量复制完整报错,同时删除 API Key、私有仓库名、用户名和敏感路径。

最快修复:EADDRINUSE: address already in use 127.0.0.1:3080

EADDRINUSE 通常表示有进程监听 3080;Windows 上的 EACCES 也可能表示 Hyper-V、WSL2 或 Docker 保留了该端口。先确认原因,只结束已经识别的旧进程;不确定时可直接改用 13080 等空闲端口。

EADDRINUSE: address already in use 127.0.0.1:3080 是什么意思

DSH 无法把本地 Web 服务绑定到指定端口。真实进程占用和 Windows 系统保留端口需要采用不同处理方式。

EADDRINUSE: address already in use 127.0.0.1:3080 的常见原因

  • 之前启动的 DSH 进程仍在运行。
  • 其他应用已经占用了 3080。
  • Windows 的保留 TCP 端口范围包含 3080。
  • 首次启动还没完成时又重复执行了启动命令。

EADDRINUSE: address already in use 127.0.0.1:3080 的源码依据

下面链接固定到本页核验使用的 0.1.2-alpha.5 / 49a606b。先确认 EADDRINUSE: address already in use 127.0.0.1:3080 是 DSH 自身行为,还是 Node.js、PowerShell、操作系统网络或文件权限产生的错误。

修复 EADDRINUSE: address already in use 127.0.0.1:3080

  1. 01

    Windows:查出监听进程和 PID

    在 PowerShell 中执行。OwningProcess 后面的数字就是 PID。

    Get-NetTCPConnection -LocalPort 3080 -State Listen | Select-Object LocalAddress,LocalPort,OwningProcess
  2. 02

    Windows:确认进程名称

    把 <PID> 替换为上一步的 OwningProcess。没有确认进程名称前,不要结束它。

    Get-Process -Id <PID>
  3. 03

    只结束已经确认的旧 DSH 进程

    只有确认该 PID 属于你准备关闭的旧 DSH 或 Node 进程后,才执行下面命令。

    Stop-Process -Id <PID>
  4. 04

    Windows:检查系统保留端口

    如果报错是 EACCES,而且没有进程监听 3080,检查它是否落在系统保留范围中。

    netsh interface ipv4 show excludedportrange protocol=tcp
  5. 05

    macOS 或 Linux:查看占用端口的进程

    命令会显示进程名称和 PID。确认进程身份后再决定是否关闭。

    lsof -nP -iTCP:3080 -sTCP:LISTEN
  6. 06

    换一个端口启动

    3080 不可用时,直接使用其他空闲端口,并打开 DSH 最终打印的准确地址。

    npx @deepseek-ai/dsh web --port 13080

确认 EADDRINUSE: address already in use 127.0.0.1:3080 已经修好

  • 终端打印 Web UI 地址,且不再出现 EADDRINUSE 或 EACCES。
  • 浏览器可以打开终端实际打印的 URL。
不要做什么
  • 没有确认进程名称前,不要直接结束未知 PID。
  • 首次下载或启动尚未完成时,不要连续启动多个 DSH。
  • 不要为了释放一个端口就随意关闭 Hyper-V、WSL2 或 Docker,换端口通常更安全。

EADDRINUSE: address already in use 127.0.0.1:3080 常见问题

EADDRINUSE: address already in use 127.0.0.1:3080 怎么修?

EADDRINUSE 通常表示有进程监听 3080;Windows 上的 EACCES 也可能表示 Hyper-V、WSL2 或 Docker 保留了该端口。先确认原因,只结束已经识别的旧进程;不确定时可直接改用 13080 等空闲端口。

EADDRINUSE: address already in use 127.0.0.1:3080 是什么意思?

DSH 无法把本地 Web 服务绑定到指定端口。真实进程占用和 Windows 系统保留端口需要采用不同处理方式。

怎么确认 EADDRINUSE: address already in use 127.0.0.1:3080 已经修好?

终端打印 Web UI 地址,且不再出现 EADDRINUSE 或 EACCES。 浏览器可以打开终端实际打印的 URL。

来源与版本

本页于 2026-09-03 对照官方仓库核验。网站使用的已发布版本基线为 0.1.1-rc.2;源码核验快照为 0.1.2-alpha.5(49a606b)。

官方 README · 核验时的源码 · GitHub Discussions