c# - 错误 CTC1014 Docker 命令失败,退出代码为 1,带有 dotnet core api
问题描述
我正在尝试使用 VS2019 和 docker 构建最基本的 Web Api 应用程序。基本上它只是 VS 提供的演示应用程序。我最终出现以下错误:
严重性代码描述项目文件行抑制状态错误 CTC1014 Docker 命令失败,退出代码为 1。 hcsshim::PrepareLayer - 在 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)。我发现我的项目正在“发布”模式下运行,而它本应在“调试”模式下运行。所以我想建议将此作为一种解决方法。
当然,在 Release 模式下运行您的应用程序应该不成问题。所以我认为它一定与大多数发布构建配置采用的一些优化有关,与 Docker 冲突。不过,不确定是哪一个。
干杯! o/
推荐阅读
- java - 在 RecyclerView 中从 Firebase 加载图像的问题
- java - 递归回溯二维数组(水会从地图上掉下来)
- vue.js - Axios 调用在 Vue.js Mounted() 内部有效,但在函数内部无效
- postgresql - 使用 Gorm 在 Go 中返回一个数组
- python - Python:将列表转换为字符串项
- list - 如何在 Python 中将所有对象添加到列表中而不在 for 循环之前使用空列表?
- c++ - 为什么以下两个代码片段会导致 MSVC 的编译输出不同,而 gcc 的编译输出相同?
- android - kotlin-stdlib-jdk 依赖的目的是什么?
- mysql - 如何在 docker 上远程访问 mariadb?
- c# - 对象属性上的自定义扩展方法以返回 DefaultValue