场景
connect() failed (111: Connection refused) while connecting to upstream, client: 172.17.0.1, server: localhost, request: "GET /api/?token=success HTTP/1.1", subrequest: "/auth", upstream: "http://127.0.0.1:8080/verify?token=success", host: "localhost"
在nginx访问接口的时候,去做一些权限的校验。只有校验通过才能访问接口,否则就直接返回失败。
但是在调用上游接口的时候,一直提示上游服务暂时禁用。但是上游服务可以保证一定运行着,并且可以访问通。所以通过查阅前人总结发现。原来每个容器内的本地主机(如Nginx容器)与容器外部的本地主机不同。
解决办法
将proxy_pass localhost:8080”中的本地主机更改为“×.×.×.×”(这是我计算机中的IPv4)即可解决这个问题。