问题
访问nginx 502 Bad Gateway
connect() failed (111: Connection refused)while connecting to upstream
可能的原因1 docker网络问题
docker nginx容器使用的bridge(默认),同时被转发的服务和nginx在同一机器,但不在同一容器, 且 nginx.conf proxy_pass
是localhost/127.0.0.1
解决办法1
proxy_pass
使用内网(172/10等开头)/公网地址。 ip addr
查看机器的地址
解决办法2
启动nginx容器的时候使用 --net=host
指定和宿主机一样的网络
docker run --name some-nginx --net=host -v /home/docker/nginx:/etc/nginx -v /home/docker/nginx/logs:/opt/app/logs -d nginx
可能的问题2 服务是否已启动
确保服务正常启动. docker ps
查看服务是否存在;
确保proxy_pass 的端口和被转发的服务端口一致,使用 telnet ip port
测试
有用请点一下左下角 好文要顶
可能的问题3 端口是否开放
云服务器,如果代理地址不是本机ip,请在对应的安全策略中开放 对应的 端口