繁体   English   中英

使用高山Docker映像时连接到MongoDb Atlas失败

[英]Connecting to MongoDb atlas fails when using alpine Docker images

我有一个.net / c#aspnet核心应用程序,该应用程序连接到MongoDb Atlas Cloud数据库。 在本地运行时,一切正常。

现在,我将应用程序放入高山docker映像中,连接失败。 我遇到了一些异常,指出身份验证不起作用。

这是我的DockerFile,用于构建和运行应用程序

FROM microsoft/dotnet:2.1-sdk-alpine AS builder
WORKDIR /
COPY . .
RUN dotnet publish Api/Api.csproj -o /dockerout/ -c Release

FROM microsoft/dotnet:2.1.3-aspnetcore-runtime-alpine
WORKDIR /app
EXPOSE 80 5000

RUN apk update

COPY --from=builder /dockerout .

ENTRYPOINT ["dotnet", "Api.dll"]

经过大量研究,我发现了一个问题,指出了根本原因: https : //github.com/dotnet/corefx/issues/9608#issuecomment-401370142

因为花了我很多时间,所以我会回答我自己的问题,希望有人可以节省时间。

有两种可能的解决方案:a)不使用高山图像b)在构建图像时通过添加open ssl来更新openssl包,例如apk add --no-cache openssl

完整的DockerFile为我解决了这个问题:

FROM microsoft/dotnet:2.1-sdk-alpine AS builder
WORKDIR /
COPY . .
RUN dotnet publish Api/Api.csproj -o /dockerout/ -c Release

FROM microsoft/dotnet:2.1.3-aspnetcore-runtime-alpine
WORKDIR /app
EXPOSE 80 5000

RUN apk update && apk add --no-cache openssl

COPY --from=builder /dockerout .

ENTRYPOINT ["dotnet", "Api.dll"]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM