"It was not possible to find any compatible framework version" 在 Docker 中使用 ASP.NET Core 2.1



我正在尝试将运行在Docker中的 ASP.NET Core 2.0应用程序更新为.NET Core 2.1 RC1。

这是我简化的.csproj文件:

<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
<Version>$(Version)</Version>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.1.0-rc1-final" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.1.0-preview1-final" />
</ItemGroup>
</Project>

这是Dockerfile

FROM microsoft/dotnet:2.1-sdk-alpine AS builder
WORKDIR /
COPY . .
RUN dotnet restore My.Project/My.Project.csproj
RUN dotnet publish My.Project/My.Project.csproj -o /dockerout/ -c Release
FROM microsoft/dotnet:2.1-aspnetcore-runtime-alpine
WORKDIR /app
EXPOSE 80 5000
COPY --from=builder /dockerout .
ENTRYPOINT ["dotnet", "My.Project.dll"]

我可以在 Docker 中构建映像,但运行它失败了

找不到

任何兼容的框架版本 找不到指定的框架"Microsoft.AspNetCore.All",版本"2.1.0-rc1-final"。

  • 检查应用程序依赖项并定位安装在以下位置的框架版本:/usr/share/dotnet/
  • 安装 .NET Core 必备组件可能有助于解决此问题: http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
  • .NET Core 框架和 SDK 可以从以下位置安装: https://aka.ms/dotnet-download

我错过了什么吗?还是我应该等待Core 2.1的最终版本?

我创建了 https://github.com/dotnet/dotnet-docker/issues/529,再次检查后,它突然开始工作。不知道,发生了什么。

最新更新