[英]Dotnet build crashes with Docker
当我从 VS2017 运行默认生成 Dockerfile 时,几分钟后我收到以下错误:
The command 'cmd /S /C dotnet build "XXX.csproj" -c Release -o /app' returned a non-zero code: 4294967295: failed to shutdown container: container e9402aaef7780a5c66dca0e3b9f5683c3c2cc079ff7934844301067bd1ce07ad encountered an error during Shutdown: failure in a Windows system调用:与托管容器的虚拟机的连接已关闭。 (0xc037010a)
由于我是 Docker 的新手,所以我不知道。 有谁知道,为什么或如何解决它?
我正在使用 Docker 19.03.4。
Dockerfile:
FROM microsoft/dotnet:2.2-aspnetcore-runtime-nanoserver-1803 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM microsoft/dotnet:2.2-sdk-nanoserver-1803 AS build
WORKDIR /src
COPY ["XXX.csproj", "XXX/"]
.
.
.
COPY ["XXX.csproj", "XXX/"]
RUN dotnet restore "XXX.csproj"
COPY . .
WORKDIR "/src/XXX"
RUN dotnet build "XXX.csproj" -c Release -o /app
FROM build AS publish
RUN dotnet publish "XXX.csproj" -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", XXX.dll"]
更新:我删除了所有图像 (48),现在可以使用,只是需要很长时间。
看起来 dotnet 构建失败了,最好在外部构建和发布二进制文件,然后将它们复制到 docker 映像,这样可以减少 docker 构建时间。
检查.net核心容器镜像的版本
插入一点运行命令,如下所示
FROM microsoft/dotnet:2.2-sdk-nanoserver-1803 AS build
WORKDIR /src
RUN dotnet --version
COPY ["XXX.csproj", "XXX/"]
还要检查本地机器的 dotnet 版本
dotnet --version
这两个版本应该匹配。 过去我遇到过预览版的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.