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

标签 asp.net docker centos

我使用带有 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/

相关文章:

ruby - passenger-install-apache2-module 失败

centos - Airflow db init 错误 - 无法为 GET/api/v1/connections 添加操作

c# - 在 asp.net mvc 中一次更新多条记录

html - mmenu 中的总菜单级别是多少?我需要5个级别

docker - Docker Swarm-仅在本地环境中使用mongod服务

docker - GO - Docker 在 K8S 容器上询问证书

php - 为什么.php 页面显示为文本?

asp.net - 通过 jQuery 调用 ASP.NET 服务器端方法

c# - 我应该如何为我的网络服务 API 生成文档?

mysql - Docker:Mysql在启动后几秒钟后崩溃