我正在尝试使用 VS2019 和 docker 构建最基本的 Web Api 应用程序。基本上它只是 VS 提供的演示应用程序。我结束了以下错误:
Severity Code Description Project File Line Suppression State Error CTC1014 Docker command failed with exit code 1. hcsshim::PrepareLayer - failed failed in Win32: Incorrec
下面我的
dockerfile
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-nanoserver-1903 AS base
WORKDIR /app
EXPOSE 8080
EXPOSE 443
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-nanoserver-1903 AS build
WORKDIR /src
COPY ["RegexTesterApi/RegexTesterApi.csproj", "RegexTesterApi/"]
RUN dotnet restore "RegexTesterApi/RegexTesterApi.csproj"
COPY . .
WORKDIR "/src/RegexTesterApi"
RUN dotnet build "RegexTesterApi.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "RegexTesterApi.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "RegexTesterApi.dll"]
嗯,这是自动生成的
dockerfile
.但对我来说看起来还不错(我也是 docker 新手)。究竟是什么导致了错误。
最佳答案
我过去遇到过同样的错误 (CTC1014)。我发现我的项目在“发布”模式下运行,而它应该在“调试”模式下运行。所以我想建议这个为 解决方法 .
Here's how you change it in VS2019
当然,在 Release模式下运行您的应用程序应该没有问题。所以我认为它一定与大多数发布构建配置采用的一些优化有关,与 Docker 冲突。不过不确定是哪一个。
干杯! o/
关于c# - 错误 CTC1014 Docker 命令失败,退出代码为 1,带有 dotnet 核心 api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60173104/