gpt4 book ai didi

asp.net - Docker 构建找不到 NETFramework 版本 5

转载 作者:行者123 更新时间:2023-12-04 19:39:58 24 4
gpt4 key购买 nike

我使用带有 CentOS 的系统来托管我的 ASP.NET Core API。我想用 Docker 来实现这一点。然后我在我的服务器上安装了必要的 SDK。

sudo dnf install dotnet-sdk-5.0
这是当前的状态。
enter image description here
然后我创建了一个看起来像这样的 Dockerfile。
FROM microsoft/dotnet:latest

COPY ./coinz-api /app
WORKDIR /app

RUN ["dotnet", "restore"]
RUN ["dotnet", "build"]

ENV ASPNETCORE_URLS http://*:5001

EXPOSE 5001

ENTRYPOINT ["dotnet", "run"]

当我尝试构建 Docker 容器时,就会发生这种情况。
enter image description here
在我看来,已安装所需的 SDK 及其运行时。那么错误在哪里呢?我有错误的版本吗?
编辑:这是我的目标。 (对不起,它是德语...)
enter image description here

最佳答案

您正在使用过期的容器:


$ podman run -it docker.io/microsoft/dotnet:latest dotnet --info
.NET Core SDK (reflecting any global.json):
Version: 2.1.816
Commit: f03a7f8e72

Runtime Environment:
OS Name: debian
OS Version: 9
OS Platform: Linux
RID: debian.9-x64
Base Path: /usr/share/dotnet/sdk/2.1.816/

Host (useful for support):
Version: 2.1.28
Commit: 612cb8b183

.NET Core SDKs installed:
2.1.816 [/usr/share/dotnet/sdk]

.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.28 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.28 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.28 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download
这是一个 .NET Core 2.1 容器镜像!
您应该使用更新的 .NET 容器镜像。较新的 .NET 容器镜像在 mcr.microsoft.com 上发布。 The official .NET on docker docs建议这样的事情:
FROM mcr.microsoft.com/dotnet/sdk:5.0
也就是说,如果您希望您的容器镜像与 CentOS 主机匹配,您也可以从 CentOS 容器镜像开始,在其中安装 .NET SDK。也许是这样的?
FROM registry.centos.org/centos:8

RUN "sudo dnf install -y dotnet-sdk-5.0"

关于asp.net - Docker 构建找不到 NETFramework 版本 5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68101540/

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