分类 devops docker访问服务报错:curl: (56) Recv failure: Connection reset by peer 文章作者 admin 发布日期 2020-12-22 Table of Contents Toggle 排查步骤错误重现 本文介绍curl宿主机映射docker启动的服务端口报curl: (56) Recv failure: Connection reset by peer错误的排查步骤。 排查步骤 检查防火墙是否关闭 systemctl status -l firewalld 检查Ipv4转发是否开启 sysctl net.ipv4.ip_forward 检查容器是否启动 检测容器内端口是否启动 检测容器端口是否映射对,比如容器里启动的是80,你-p的时候映射成 -p 18000:81 检测容器是否监听0.0.0.0 错误重现 # 错误写法1,容器监听没有绑定0.0.0.0 docker run -p 14444:8000 -it python:3.7-slim python3 -m http.server --bind 127.0.0.1 # 错误写法2,容器端口映射错误,容器是8000,映射的时候写成了8001 docker run -p 14444:8001 -it python:3.7-slim python3 -m http.server --bind 0.0.0.0 curl -v http://127.0.0.1:14444 * About to connect() to 127.0.0.1 port 14444 (#0) * Trying 127.0.0.1... * Connected to 127.0.0.1 (127.0.0.1) port 14444 (#0) > GET / HTTP/1.1 > User-Agent: curl/7.29.0 > Host: 127.0.0.1:14444 > Accept: */* > * Recv failure: Connection reset by peer * Closing connection 0 curl: (56) Recv failure: Connection reset by peer # 正确写法 docker run -p 14444:8000 -it python:3.7-slim python3 -m http.server --bind 0.0.0.0 * About to connect() to 127.0.0.1 port 14444 (#0) * Trying 127.0.0.1... * Connected to 127.0.0.1 (127.0.0.1) port 14444 (#0) > GET / HTTP/1.1 > User-Agent: curl/7.29.0 > Host: 127.0.0.1:14444 > Accept: */* > * HTTP 1.0, assume close after body < HTTP/1.0 200 OK < Server: SimpleHTTP/0.6 Python/3.7.9 < Date: Tue, 22 Dec 2020 05:32:37 GMT < Content-type: text/html; charset=utf-8 < Content-Length: 987 ← Dockerfile中的VOLUME指令有啥用 → Tomcat8使用SSLHostConfig配置PEM格式证书开启tls