IronPDF auf AWS Lambda ohne Docker
IronPDF läuft auf AWS Lambda, aber nur innerhalb einer Lambda-Funktion, die aus einem benutzerdefinierten Docker-Container-Image erstellt wurde. Ein Standard-Nicht-Docker-Lambda-Laufzeitumgebung fehlt die nativen Linux-Bibliotheken, die IronPDF benötigt, sodass PDF-Arbeiten dort fehlschlagen.
IronPDF hängt von mehreren nativen Linux-Bibliotheken ab, einschließlich:
gcc-c++glibc-devel.i686glibc.i686pango.x86_64
Diese Bibliotheken sind standardmäßig nicht in Standard-AWS-Lambda-Umgebungen vorhanden. Beim Ausführen von IronPDF in einer Nicht-Docker-Lambda-Funktion ohne diese taucht typischerweise eine der folgenden Fehlermeldungen auf:
Native errors related to missing libraries
Failures in PDF generation or rendering
Crashes or instability when calling IronPdf methods
Die Hauptursache ist die Rendering-Engine: IronPDF steuert intern Chrome, und Chrome selbst verlässt sich auf native Linux-Komponenten. Minimale serverlose Laufzeitumgebungen wie die Standard-AWS-Lambda-Images shippen diese Komponenten nicht, und sie können zur Laufzeit nicht zuverlässig installiert werden.
Lösung
Stellen Sie IronPDF in einem benutzerdefinierten Docker-Container-Image bereit, das jede erforderliche native Abhängigkeit im Voraus installiert. Das gibt Lambda eine vollständig kompatible Umgebung anstelle einer abgespeckten Laufzeit.
FROM public.ecr.aws/lambda/dotnet:8
# install necessary packages
RUN dnf update -y
RUN dnf install -y gcc-c++ pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 dbus-glib-devel
RUN dnf install -y libXdamage.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64
RUN dnf install -y libXrandr.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 ipa-gothic-fonts xorg-x11-fonts-100dpi
RUN dnf install -y xorg-x11-fonts-75dpi xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc
RUN dnf install -y mesa-libgbm.x86_64
RUN dnf install -y nss-3.90.0-3.amzn2023.0.4.x86_64
WORKDIR /var/task
COPY "bin/Release/lambda-publish" .
CMD ["AWSLambdaNet8Container::AWSLambdaNet8Container.PrintPdf::FunctionHandler"]
Die Linien dnf install ziehen die Abhängigkeiten des Chrome-Renderings herein; Der Eintrag CMD dirigiert Lambda auf Ihren Funktionshandler im veröffentlichten Ergebnis.
Für eine vollständige Anleitung siehe Mit IronPDF PDF-Dateien auf AWS Lambda erstellen.

