mmp@LAPTOP-ME3EJSM5:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
260453d57ed9 31aa730a8cc1 "./Server " 12 minutes ago Up 12 minutes 0.0.0.0:5000->5000/tcp flamboyant_boyd
然后无法访问 5000 端口,显示
该网页无法正常运作 localhost 未发送任何数据。 ERR_EMPTY_RESPONSE
该从哪个方向去查原因
1
zxCoder OP docker 是在 WSL2 里
从 WSL 里似乎可以访问端口,但是外部浏览器不行 ``` mmp@LAPTOP-ME3EJSM5:~$ telnet localhost 5000 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Connection closed by foreign host. ``` |
2
whitelee8080 2021-04-14 13:38:39 +08:00
看下防火墙 5000 端口是否对外开发。
|
3
jjianwen68 2021-04-14 13:47:48 +08:00
是不是要查查这个 container 启动用的 network
|
4
abersheeran 2021-04-14 13:49:20 +08:00
我也遇见过,各种操作都没搞定,还找了公司里的大佬,都没搞定。后面直接重装了一次系统就好了。我和大佬都猜测是那个机子(新装的系统)防火墙有问题,没办法正常转发。
另,你把 network 模式改成 host 试试。当时我那个情况下改成这个就可以正常了。不过用起来不爽所以重装了系统。 |
5
zxCoder OP 心态崩了 一整天代码没碰几行 光是搞个环境就快下班了
|
6
zxCoder OP @whitelee8080
@jjianwen68 @abersheeran 请教一个问题,如果 docker 启动容器绑定端口,docker ps 能显示绑定的端口,而 lsof -i 会有对应显示 docker 进程吗? |
7
zxCoder OP @zxCoder 试了一下 直接在 WSL 里启动服务,windows 是可以访问对应端口的,如果用 docker 就不行了,不知道绑定端口哪个地方出错了
|
8
handsomeroger 2021-04-14 15:02:11 +08:00
执行一下这个命令 看看回显是什么
|
9
handsomeroger 2021-04-14 15:03:24 +08:00
sysctl net.ipv4.ip_forward 看看回显是什么
如果 net.ipv4.ip_forward 是 0 的话 echo 'net.ipv4.ip_forward = 1' >> /usr/lib/sysctl.d/50-default.conf sysctl -p /usr/lib/sysctl.d/50-default.conf 看看能解决吗 |
10
Acoffice 2021-04-14 15:17:34 +08:00
这种可能是 iptables 规则被改动了吧,正常重启 docker 服务或者重启机器能恢复.
|
11
PerFectTime 2021-04-14 15:23:27 +08:00
服务器安全组开了吗
|
12
PerFectTime 2021-04-14 15:23:57 +08:00
另外试一下 127.0.0.1
|
13
zxCoder OP @handsomeroger 是 1
|
14
ztxcccc 2021-04-14 15:43:48 +08:00
有些软件域名如果是 localhost/127.0.0.1 进 docker 会有问题,换四个零试试
|