Docker构建因xorg-x11-utils在Amazon Linux 2023上失败

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

在Amazon Linux 2023上使用public.ecr.aws/lambda/dotnet:8基础镜像构建IronPDF Docker镜像时,dnf install步骤因软件包冲突错误而失败。

problem with installed package xprop-1.2.7-1.amzn2023.x86_64 from amazonlinux
  obsoletes xorg-x11-utils < 7.5-39
  provided by xorg-x11-utils-7.5-38.amzn2023.0.2.x86_64 from amazonlinux

Amazon Linux 2023预装了xorg-x11-utils。 当Dockerfile尝试显式安装xprop已经满足了相同的角色,软件包管理器将此安装视为冲突。

解决方案

从Dockerfile的每一行xorg-x11-utils。Amazon Linux 2023提供的xprop软件包涵盖了其功能。 所有其他IronPDF依赖项都能无冲突地安装。

为.NET 8准备的AWS Lambda修正Dockerfile:

FROM public.ecr.aws/lambda/dotnet:8

RUN dnf update -y && dnf install -y gcc-c++ pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 dbus-glib-devel \
    && dnf install -y libXdamage.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64 \
    && dnf install -y libXrandr.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 ipa-gothic-fonts xorg-x11-fonts-100dpi \
    && dnf install -y xorg-x11-fonts-75dpi xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc \
    && dnf install -y mesa-libgbm.x86_64 \
    && dnf install -y nss-3.90.0-3.amzn2023.0.4.x86_64

WORKDIR /var/task
COPY "bin/Release/lambda-publish" .

注意:dnf install行中。 固定的nss版本避免了可能在此基础镜像上发生的nss冲突。 有关一般的AWS Lambda设置,请参阅AWS部署指南

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

准备开始了吗?
Nuget 下载 20,088,359 | 版本: 2026.7 刚刚发布
Still Scrolling Icon

还在滚动吗?

想快速获得证据? PM > Install-Package IronPdf
运行示例看着你的HTML代码变成PDF文件。