Windows | Docker容器的端口无法正常工作
Apr 25, 2025
问题
docker
容器监听报错
使用netstat -ano
也没有其他服务占用端口
解决
通过netsh interface ipv4 show excludedportrange protocol=tcp
发现,需要监听的端口被包含在里面。
使用netsh int ipv4 show dynamicport tcp
发现保留端口号是从1024
开始的。
根本原因归结于 Windows
的“TCP 动态端口范围”,并且可能由于 Hyper-V
预留的端口号导致冲突。
solution 1
在原有保留端口中排除特定端口
-
禁用 Hyper-V(这将需要重启几次)
-
完成所有必要的重启后,预留你需要的端口,以防 Hyper-V 重新占用该端口。
-
重新启用 Hyper-V(这将需要重启几次)
solution 2
重置“TCP 动态端口范围”,使 Hyper-V
只预留我们设置的端口范围