如果我停止 iptables 服务,一切都会正常。我需要知道如何更改 iptables 配置以允许容器访问主机端口。
我在这台 RHEL 7 服务器上有一个 nginx 容器,接受到端口 443 的连接。在同一台服务器上,jupyterhub 在没有 ssl 的情况下在端口 8000 上运行。 proxy_pass 用于从网络浏览器打开 jupyterhub。
curl https://HOSTNAME
<html>
<head><title>502 Bad Gateway</title></head>
docker logs nginx-container
CLIENT-IP - - [08/Apr/2019:17:05:47 -0500] "GET / HTTP/1.1" 502 150 "-" "curl/7.29.0" "-"
2019/04/08 17:05:47 [error] 6#6: *11 connect() failed (113: No route to host) while connecting to upstream, client: CLIENT-IP, server: HOSTNAME, request: "GET / HTTP/1.1", upstream: "http://HOST-IP:8000/", host: "HOSTNAME"
如果我使用非docker nginx代理,完全没有问题。