问题的原因是 SkiaSharp,它的 NuGet 包中不包含本机 libSkiaSharp.so。
https://github.com/mono/SkiaSharp/issues/288
为了解决这个问题,我做了以下事情:
从这里下载 libSkiaSharp.so https://github.com/mono/SkiaSharp/releases/tag/v1.59.3
使用以下 nuspec 创建了 NuGet 包
<?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd"> <metadata> <id>Aspose .Skia.Linux.Natives</id> <version>1.59.3</version> <title>Aspose.Skia.Linux.Natives</title> <authors>Aspose</authors> <owners>Aspose</owners> <requireLicenseAcceptance>false</requireLicenseAcceptance> <description>包含适用于 Linux 的skia native</description> <dependencies> <group targetFramework=".NETStandard2.0"> <dependency id="SkiaSharp" version="1.59.3" /> </group> </dependencies> </metadata> <files> <file src="C:\Temp\libSkiaSharp.so" target="runtimes\linux-x64\native\libSkiaSharp.so"/> </files> </package>
将生成的 NuGet 包放入私有存储库,并在我的 .NET Core Web 应用程序中添加对它的引用。
添加了对 Aspose.Words NuGet 包的引用。
修改后的 Dockerfile:
来自微软/aspnetcore:2.0
ARG 源
工作目录 /app
曝光 80
运行 apt-get update && apt-get install -y libfontconfig1
复制 ${source:-obj/Docker/publish} 。
入口点 ["dotnet", "WebApplication1.dll"]
如您所见,我添加了“RUN apt-get update && apt-get install -y libfontconfig1”,因为 libSkiaSharp.so 似乎依赖于它。
我与 Aspose 一起担任开发人员宣传员。