Docker:在CLI上运行dotnet发布-o / output会导致非零的错误
我使用的是Ubuntu 16.04 LTS,
Docker-compose v 1.18.0-rc2, build 189468b Docker version 17.12.0-ce-rc1, build ee2f943
运行这个命令: dotnet发布带docker的-o / output会导致这个错误:
ERROR: Service 'generator' failed to build: The command '/bin/sh -c dotnet publish -c Release -o out' returned a non-zero code: 145
我已经安装了Ubuntu的.NET SDK,不知道如何解决这个错误; 它只是不会创build该发布文件夹; 这里是dotnet –info
joel @ worker-2:〜/ workspace / asp(copy)/ api $ dotnet –info .NET命令行工具(2.0.2)
产品信息:版本:2.0.2提交SHA-1哈希:a04b4bf512
运行时环境:操作系统名称:ubuntu操作系统版本:16.04操作系统平台:Linux RID:ubuntu.16.04-x64基本path:
/usr/share/dotnet/sdk/2.0.2/Microsoft .NET Core共享框架主机
版本:2.0.0 Build:e8b8861ac7faf042c87a5c2f9f2d04c98b69f28d
链接到相同的问题措辞不同,更多的错误日志
您看到的错误是因为您的项目包含一个global.json
文件,将所需的SDK版本固定到2.0.2。 但是,docker镜像包含了更新的SDK版本(当前是2.1.3)。 由于您用于构build的Docker镜像中没有2.0.2 SDK,因此只是出错。
首先,如果您使用的是Ubuntu,Docker for Windows不相关。
我看到dotnet publish -c Release -o out
在“ Dockerize .NET Core应用程序 ”(和repo dotnet/dotnet-docker-samples
)中使用与图像开始
FROM microsoft/aspnetcore-build:2.0 AS build-env
这是一个标签,这是一个多拱形的,这意味着它将取决于主机(这里是Ubuntu)的Windows或Linux容器,
但是,在您之前的问题中,您提到了以下这些复杂的课程:docker docker-images-containers-aspdotnet-core
,并且只能在Windows上完成(意味着Windows server 2016/2017,能够执行Windows映像)
- 如何在Docker容器中运行.NETunit testing
- 在Docker容器内运行的Identity Server 4例外:无法加载DLL“System.Security.Cryptography.Native.OpenSsl”
- Identity Server 4和Docker
- 具有ASP.NET核心库的Docker容器
- Dotnet核心Docker应用挂在Synology版本上
- Docker中用于.NET Core应用程序的appSettings.json?
- 当在.net-core中执行docker化的新进程时,在linux上没有指定输出文件的Ffmpeg错误
- 如何在Docker容器中使用.NET核心访问远程URI?
- Docker撰写 – 为networking名称添加标识符