解决 IronPDF 中的 libcef.dll 错误

This article was translated from English: Does it need improvement?
Translated
View the article in English

您是否看到以下错误消息?

  • 加载其中一个Chrome程序集(libcef.dll)时出错
  • Chrome 部署失败(加载 libcef.dll 时出错)(203)

    这是因为System.Drawing不包含在Windows Nano Server和Windows Servercore(.Net6)中。

    Windows 的官方 .NET 映像基于 Nano Server。

    为了解决这个问题,我们建议以下两种方法之一:

  1. 将您的项目构建和部署为self-contained(点击获取有关此选项的更多信息

  2. 通过在您的 .csproj 文件中更改以下属性来切换到基于Linux的容器镜像:
<DockerDefaultTargetOS>Windows</DockerDefaultTargetOS>
      to  
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<DockerDefaultTargetOS>Windows</DockerDefaultTargetOS>
      to  
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
XML

然后,您就可以添加 Linux 依赖项了:

RUN apt update \     && apt install -y libgdiplus libxkbcommon-x11-0 libc6 libc6-dev libgtk2.0-0 libnss3 libatk-bridge2.0-0 libx11-xcb1 libxcb-dri3-0 libdrm-common libgbm1 libasound2 libxrender1 libfontconfig1 libxshmfence1
RUN apt update \     && apt install -y libgdiplus libxkbcommon-x11-0 libc6 libc6-dev libgtk2.0-0 libnss3 libatk-bridge2.0-0 libx11-xcb1 libxcb-dri3-0 libdrm-common libgbm1 libasound2 libxrender1 libfontconfig1 libxshmfence1
SHELL

(以上依赖项适用于 Debian 11,然而 Ubuntu、CentOs、Amazon Linux 等的特定依赖项可以在此处查看)