Publish.net core 3.0 as FDE for win on linux
Posted
技术标签:
【中文标题】Publish.net core 3.0 as FDE for win on linux【英文标题】: 【发布时间】:2019-10-22 09:00:51 【问题描述】:我需要将 asp.net 应用程序发布为 Windows 的框架相关可执行文件。 使用官方镜像 mcr.microsoft.com/dotnet/core/sdk:3.0 在 docker 容器 (Gitlab CI) 中发布。
发布命令是
dotnet publish -f netcoreapp3.0 -c Release -o result_folder -r win-x64 --self-contained false project.csproj
发布成功完成,但产生了 90+ MB 的文件,其中一些:
System.Private.CoreLib.dll
System.Private.Xml.dll
coreclr.dll
System.Linq.Expressions.dll
api-ms-win-core-file-l1-2-0.dll
Result 看起来更像是一个独立的可执行文件,而不是我期望的依赖于框架的。
在 Windows 上运行相同的命令会产生 12+ MB 的文件。结果看起来完全像我预期的依赖于框架的可执行文件。
问题是如何在 docker/linux 上获得相同的结果?
【问题讨论】:
【参考方案1】:原来.net发布没有问题。其他文件由其他 CI 活动创建。
所以发布在 docker 中的 linux 上运行良好!
【讨论】:
以上是关于Publish.net core 3.0 as FDE for win on linux的主要内容,如果未能解决你的问题,请参考以下文章
jenkins publish .net core application to linux server in docker