gpt4 book ai didi

Kong,502 Bad Gateway with localhost 服务

转载 作者:行者123 更新时间:2023-12-05 01:41:15 25 4
gpt4 key购买 nike

我遇到了 Kong 的问题,我创建了我的服务和路线,就像 Kong 文档的 5 分钟快速入门一样,但我只更改了一些参数以使用我自己的在 localhost:3000 上工作的 api 设置服务。

这是我的设置:

  • Kong 在 docker 上运行(Docker 与我的服务在同一台机器上运行)
  • http://localhost:3000/users这是我的服务总是返回 JSON{“状态”:“好的”}

这就是我创建服务所做的。

我用参数创建了我的服务:

{
"name": "users",
"url": "http://localhost:3000",
"host": "127.0.0.1"
}

然后我用主体创建了路线:

{
"hosts": [ "127.0.0.1"],
"methods": ["GET"],
"paths": ["/"],
"name": "users"
}

然后我尝试是否一切正常 http://localhost:8080/users带标题:“主机:127.0.0.1”

我得到了回复:

502 Bad Gateway : An invalid response was received from the upstream server

docker 的日志(这个托管kong):

2019/03/04 09:28:36 [error] 36#0: *63824 connect() failed (111: Connection refused) while connecting to upstream, client: 172.18.0.1, server: kong, request: "GET /users HTTP/1.1", upstream: "http://127.0.0.1:3000/users", host: "127.0.0.1"

所以我们可以看到 Kong 试图访问良好端点 '127.0.0.1:3000/' 但无法访问它。

也许 Kong 尝试访问的是自己的容器 localhost 但我不知道,我不知道如何解决它,也许你可以帮助我!

最佳答案

你确实配置了 Kong 来访问它自己的容器。为了访问在您的实际机器上运行的服务(我在这里假设是 Windows 或 macOS),您可以将该服务指向 http://host.docker.internal:3000。此外,在您正确连接之前,我会省略 host 属性,然后再次添加限制。

另见这个问题:Dockererized Kong on windows giving "An invalid response was received from the upstream server"

在容器中运行的 Kong 就像拥有自己的小虚拟机(别打我,我知道这不太对,但从网络的角度来看,这是可行的),并且 localhost因为 Kong 就是容器。容器的宿主机,对于Kong来说,是一个独立的宿主机。

关于Kong,502 Bad Gateway with localhost 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54981810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com