我正在构建一个Docker容器,作为Azure DevOps管道中的一步,并使用提供的构建池。当我尝试运行容器时,出现以下错误。我了解我在构建容器时需要更新asp.net版本,并且正在寻找可以添加到Dockerfile中的命令行。
我找到了许多下载正确版本的地方,但是还没有找到一种将命令下载并安装到docker文件中的好方法。
我的Dockerfile非常简单,并且基于Windows 1803。
FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-nanoserver-sac2016 AS runtime
WORKDIR /app
COPY SampleMvcApp/out ./
ENTRYPOINT ["dotnet", "Meta-Analytics.dll"]
我收到的错误摘要如下:
The specified framework 'Microsoft.AspNetCore.All', version '2.2.5' was not found.
The following versions are installed:
2.2.2 at [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
答案 0 :(得分:0)
也许您可以使用global.json文件定位.net核心版本
{
"sdk": {
"version": "2.2.300"
}
}
答案 1 :(得分:0)
该项目似乎在某个时候进行了升级,但并未遵循所有迁移选项。
在版本2.1中已弃用对Microsoft.AspNetCore.All
的支持。您应将其替换为Microsoft.AspNetCore.App
,而不应该指定版本。
<PackageReference Include="Microsoft.AspNetCore.App" />
有关详情,请参见https://docs.microsoft.com/en-us/aspnet/core/fundamentals/metapackage?view=aspnetcore-2.2#migrate,请参见https://docs.microsoft.com/en-us/aspnet/core/migration/20_21?view=aspnetcore-2.2