Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 指定的框架';Microsoft.AspNetCore.All';,版本';2.1.2';找不到_C#_Asp.net Core_Docker Compose - Fatal编程技术网

C# 指定的框架';Microsoft.AspNetCore.All';,版本';2.1.2';找不到

C# 指定的框架';Microsoft.AspNetCore.All';,版本';2.1.2';找不到,c#,asp.net-core,docker-compose,C#,Asp.net Core,Docker Compose,我创建了我的应用程序,它成功地创建了docker容器。当我试着运行它的时候 docker run -it --name myapp myapp:latest 我得到以下错误: The specified framework 'Microsoft.AspNetCore.All', version '2.1.2' was not found. ... - The following versions are installed: 2.1.1 at [/usr/share/dotnet/

我创建了我的应用程序,它成功地创建了docker容器。当我试着运行它的时候

docker run -it --name myapp myapp:latest
我得到以下错误:

The specified framework 'Microsoft.AspNetCore.All', version '2.1.2' was not found.
...
- The following versions are installed:
      2.1.1 at [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
当我登录到容器中时,我可以看到,在
/usr/share/dotnet/shared/Microsoft.AspNetCore.All
文件夹中,有一个子文件夹名为
2.1.2

我不明白为什么它说2.1.1已经安装,而2.1.2没有安装

以下是我的Dockerfile:

FROM microsoft/dotnet:2.1.400-sdk-stretch AS base
WORKDIR /app
EXPOSE 80

FROM microsoft/dotnet:2.1.400-sdk-stretch AS build
WORKDIR /src
COPY source/application/MyApp/MyApp.csproj source/application/MyApp/
COPY source/application/MyApp.DependentProject/MyApp.DependentProject.csproj source/application/MyApp/
RUN dotnet restore source/application/MyApp/MyApp.csproj
COPY . .
WORKDIR /src/source/application/MyApp
RUN dotnet build MyApp.csproj -c Release -o /app

FROM build AS publish
RUN dotnet publish MyApp.csproj -c Release -o /app

FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "MyApp.dll"]

您可以尝试更改:

FROM microsoft/dotnet:2.1.400-sdk-stretch AS base


有关更多示例,请参阅和上的dotnet core和docker

您使用的docker容器映像是什么?我正在尝试列出的各种映像。我使用microsoft/dotnet:2.1.400-sdk-stretch作为基础。我不确定是否相关,但docker支持是在事实发生后添加的,第一次创建项目时不在项目模板中。从microsoft/dotnet AS base创建相同的结果,即安装了2.1.1,但未安装2.1.2。docker文档中有此步骤,例如#从microsoft/dotnet生成运行时映像:aspnetcore runtime WORKDIR/app COPY--FROM=Build env/app/out。入口点[“dotnet”,“aspnetapp.dll”]
FROM microsoft/dotnet AS base
FROM microsoft/dotnet:2.1.2-sdk AS base