IronPDF dans AWS Lambda .NET 8 : Erreurs de binaire Chromium manquant
Lors de l'exécution d'IronPDF à l'intérieur d'une image conteneur AWS Lambda .NET 8, l'application échoue avec une exception indiquant que le binaire Chromium intégré ne peut pas être trouvé.
IronSoftware.Exceptions.IronSoftwareEmbeddedDeploymentMissingException:
Failed to find embedded resource 'Chrome.linux-x64.zip'
La pile d'exceptions complète peut apparaître comme suit :
Unhandled exception. System.Exception: Error while convert DOCX document to HTML:
IronSoftware.Exceptions.IronSoftwareEmbeddedDeploymentMissingException: Failed to find embedded resource 'Chrome.linux-x64.zip'
at IronSoftware.Deployment.AssetManager.GetEmbededResourceStream(...)
at IronSoftware.Deployment.EmbeddedResourceDeployment.Deploy()
at IronPdf.Engines.Chrome.LocalChromeClient.Initialize()
Trois conditions causent cette erreur. Tout d'abord, si l'outil de test factice AWS Lambda exécute la fonction sur Windows pendant que le fichier Docker cible Linux, la plateforme de ressources intégrées ne correspond pas à l'exécution. Deuxièmement, IronPdf.Slim est un package propre à Linux et échoue lorsque l'environnement d'exécution est Windows. Troisièmement, l'image de base du conteneur peut ne pas répondre aux exigences de la plateforme IronPDF.
Solution
Étape 1 : Testez sur le runtime Linux correct
Ne testez pas les fonctions Lambda en utilisant l'outil de test simulé sur Windows. Utilisez Docker localement pour répliquer l'environnement Lambda :
docker build -t my-lambda-test .
docker run --rm my-lambda-test
docker build -t my-lambda-test .
docker run --rm my-lambda-test
Étape 2 : Utilisez le package complet IronPDF pour prendre en charge plusieurs plateformes
Si vous devez fonctionner à la fois sous Windows et Linux, utilisez IronPdf plutôt que IronPdf.Slim :
Install-Package IronPdf
IronPdf.Slim est uniquement disponible sous Linux. IronPdf inclut des binaires intégrés pour les deux plateformes.
Étape 3 : Installez les dépendances Linux dans le Dockerfile
FROM public.ecr.aws/lambda/dotnet:8
RUN yum install -y \
pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 \
libXext.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 \
libXScrnSaver.x86_64 libXrandr.x86_64 GConf2.x86_64 alsa-lib.x86_64 \
atk.x86_64 gtk3.x86_64 ipa-gothic-fonts \
xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi \
xorg-x11-utils xorg-x11-fonts-cyrillic \
xorg-x11-fonts-Type1 xorg-x11-fonts-misc \
glibc-devel.x86_64 at-spi2-atk.x86_64 mesa-libgbm.x86_64
Pour la configuration complète de Docker AWS Lambda, consultez le guide de déploiement AWS.

