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

Docker部署ASP.NET Core 6 API映射8080端口后Postman及浏览器无法访问

Docker运行ASP.NET Core API访问连接拒绝排查方案

你日志里的两个DataProtection相关警告不影响接口访问,仅和加密数据持久化相关,不用优先处理。连接拒绝属于TCP网络层面问题,可按以下顺序排查:

  • 第一步:确认容器正常运行
    执行命令docker ps,查看对应容器的状态是否为Up,如果状态是退出,执行docker logs 容器ID查看崩溃日志定位问题。

  • 第二步:确认端口映射生效
    执行命令docker port 容器名/容器ID,正常输出应为:

80/tcp -> 0.0.0.0:8080
80/tcp -> [::]:8080

如果没有对应输出,说明本地8080端口已被其他程序占用,可更换映射端口重新启动容器,例如:
docker run -p 9999:80 --name container-backend image-backend

  • 第三步:解决WSL2后端转发异常问题
    如果你在Windows上使用Docker Desktop的WSL2后端,存在已知的localhost转发失效问题:

    1. 尝试将请求地址中的localhost替换为127.0.0.1访问
    2. 执行wsl hostname -I获取WSL虚拟机IP,直接访问http://<WSL IP>:8080/api/v1/Authentication/test验证连通性
  • 第四步:排除防火墙拦截
    暂时关闭本地Windows防火墙后重试访问,部分防火墙规则会拦截Docker的端口转发流量。

  • 第五步:验证容器内服务可用性
    执行命令进入容器内部:
    docker exec -it container-backend bash
    在容器内执行请求测试服务是否正常:
    curl http://localhost:80/api/v1/Authentication/test
    如果能正常返回{"Test":"it works test"},说明服务本身无问题,问题出在宿主机到容器的网络链路,按前三个步骤排查即可。

另外需要注意:如果之前启动过同名容器未清理,也会导致新容器端口映射失败,可执行docker rm -f container-backend清理旧容器后再重新启动。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 10:45:02