You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何卸载占用8081端口的nginx?删除docker容器镜像后端口仍被占用如何解决

8081端口残留占用问题解决步骤

第一步:确认实际占用端口的进程

根据你当前使用的操作系统执行对应命令,获取占用8081端口的进程PID和进程名称:

  • Linux/macOS 终端执行:
    sudo lsof -i :8081
    # 或
    sudo ss -tulpn | grep 8081
    
  • Windows 管理员权限终端执行:
    netstat -ano | findstr :8081
    

第二步:针对Docker残留问题处理

你之前通过Docker启动Nginx,大概率是Docker网络栈残留导致端口未释放,按以下顺序操作即可:

  • 确认是否有遗漏的关联容器:
    执行docker ps -a查看所有容器列表,如果还存在server容器或其他绑定8081端口的容器,执行docker rm -f <容器ID>强制删除。
  • 清理Docker残留网络:
    执行docker network prune -f清理所有未被使用的Docker虚拟网络,释放残留的端口绑定规则。
  • 重启Docker服务:
    • Linux系统执行:sudo systemctl restart docker
    • macOS/Windows系统直接在Docker Desktop客户端点击重启按钮
      重启后Docker会自动释放所有异常残留的端口占用。

第三步:非Docker进程占用的处理

如果第一步查询到的进程是本地直接安装的Nginx而非Docker相关进程,按系统执行卸载或强制杀进程即可:

  • 强制杀死占用进程:
    • Linux/macOS执行:sudo kill -9 <第一步查到的进程PID>
    • Windows执行:taskkill /F /PID <第一步查到的进程PID>
  • 卸载本地Nginx:
    • Debian/Ubuntu系统:sudo apt remove -y nginx
    • CentOS/RHEL系统:sudo yum remove -y nginx
    • macOS Homebrew安装的Nginx:brew uninstall nginx

特殊场景处理(WSL2环境)

如果你是在Windows的WSL2子系统中使用Docker,还可能是WSL和Windows的端口映射残留,执行wsl --shutdown关闭WSL后重新打开即可解决。

验证结果

操作完成后重新执行第一步的端口查询命令,确认8081端口无进程占用即可。


内容的提问来源于stack exchange,提问作者0x55b1E06FF

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 10:03:05