首页 > 解决方案 > .NET Core API 502 带有 Nginx 代理的 Docker 上的错误网关

问题描述

我在一个带有 Nginx 反向代理的 docker 容器中托管一个 .NET Core Web API 进程。我可以发送一个请求,然后我会得到预期的响应。有一个问题我似乎无法弄清楚。每隔几个小时,我的 API 请求就会开始收到 502 Bad Gateway 错误响应。如果我停止并重新启动 API 的 docker 容器,错误就会停止,一切都会恢复正常。

有人想吗?

标签: dockernginxasp.net-core

解决方案


我描述的问题是固定的。当我更改我的 Dockerfile 基础映像时,我发现该问题自行解决了。在将我的 API 更新到 .NET Core 2.1.1 时,我决定在我的 Dockerfile 中使用这个图像: FROM microsoft/dotnet:2.1.1-aspnetcore-runtime-alpine3.7

我将该行更改为: FROM microsoft/dotnet:2.1-aspnetcore-runtime

使用“dotnet:2.1-aspnetcore-runtime”镜像解决了这个问题。我只能假设“microsoft/dotnet:2.1.1-aspnetcore-runtime-alpine3.7”图像有问题。

作为此开关的副作用,我的 docker 图像更大。以前我的 docker 映像是 71mb,但经过这次更改,现在是 107mb。我没关系。


推荐阅读