首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker nginx反向代理提供"502 Bad Gateway“

Docker nginx反向代理提供"502 Bad Gateway“
EN

Stack Overflow用户
提问于 2017-11-03 16:28:50
回答 6查看 68.8K关注 0票数 35

我正在尝试让一个带有nginx的docker容器作为其他docker容器的反向代理,但我总是在除基本位置'/‘之外的其他位置得到"Bad Gateway“。

我有以下服务器模块:

代码语言:javascript
复制
server {

  listen 80;

  location / {
    proxy_pass "http://game2048:8080";
  }

  location /game {
    proxy_pass "http://game:9999";
  }

}

它适用于http://localhost,但不适用于http://localhost/game,它在浏览器中提供了“糟糕的网关”,并在nginx容器上提供了以下内容:

代码语言:javascript
复制
[error] 7#7: *6 connect() failed (111: Connection refused) 
while connecting to upstream, client: 172.17.0.1, server: , 
request: "GET /game HTTP/1.1", upstream: "http://172.17.0.4:9999/game", 
host: "localhost"

我使用官方的nginx docker镜像,并在其上放置我自己的配置。您可以在此处测试并查看所有详细信息:https://github.com/jollege/ngprox1

你知道哪里出问题了吗?

注意:我已在docker主机上设置了本地主机名条目,以匹配这些名称:

代码语言:javascript
复制
127.0.1.1       game2048
127.0.1.1       game
EN

回答 6

Stack Overflow用户

发布于 2017-11-03 17:03:22

我修好了!我在nginx config中的不同服务器块中设置了服务器名称。请记住使用坞站端口,而不是主机端口。

代码语言:javascript
复制
server {

  listen 80;
  server_name game2048;

  location / {
    proxy_pass "http://game2048:8080";
  }

}

server {

  listen 80;
  server_name game;

  location / {
    # Remember to refer to docker port, not host port
    # which is 9999 in this case:
    proxy_pass "http://game:8080";
  }

}

github存储库已经更新,以反映修复,旧的自述文件在./README.old01.md下。

典型的情况是,当我仔细地向别人提问时,我会找到答案。你知道那种感觉吗?

票数 28
EN

Stack Overflow用户

发布于 2020-06-03 23:12:04

我也遇到了同样的"502 Bad Gateway“错误,但解决方案是按照this post的说明调优proxy_buffer_size:

代码语言:javascript
复制
proxy_buffering off;
proxy_buffer_size 16k;
proxy_busy_buffers_size 24k;
proxy_buffers 64 4k;
票数 4
EN

Stack Overflow用户

发布于 2019-02-08 00:38:48

我也有同样的错误,但对于一个web应用程序来说,它不是在配置中提到的IP和端口上提供服务。

所以假设你有这个:

代码语言:javascript
复制
location /game {
    proxy_pass "http://game:9999";
}

然后,确保您在游戏中期望的web应用程序确实是从一个名为‘http://game:9999’的docker容器中提供服务的,并且代码设置为在端口9999处为应用程序提供服务。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47091356

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档