IronPDF in AWS Lambda .NET 8: Chromium バイナリが見つからないエラー
AWS Lambda .NET 8 のコンテナイメージ内で IronPDF を実行する際に、埋め込まれた Chromium バイナリが見つからないという例外でアプリケーションが失敗します。
IronSoftware.Exceptions.IronSoftwareEmbeddedDeploymentMissingException:
Failed to find embedded resource 'Chrome.linux-x64.zip'
完全な例外スタックは次のように表示される場合があります:
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()
このエラーの原因は3つあります。 まず、AWS Lambda Mock Test ToolがWindowsで関数を実行するのに対して、DockerfileがLinuxをターゲットにしている場合、埋め込まれたリソースプラットフォームがランタイムと一致しません。第二に、デプロイされたパッケージにターゲットランタイム用のネイティブ Chromium レンダリングバイナリが含まれていないため、実行時に Linux バイナリが欠落しています。 第三に、コンテナベースイメージが IronPDF のプラットフォーム要件を満たしていない場合があります。
解決策
ステップ1: 正しい Linux 実行環境でテストする
Windows 上の Mock Test Tool を使用して Lambda 関数をテストしないでください。 Docker をローカルで使用して 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
ステップ2: クロスプラットフォームサポートのために完全な IronPDF パッケージを使用する
WindowsとLinuxの両方で実行する必要がある場合は、IronPdfを使用します。
Install-Package IronPdf
IronPdf.Slimはプラットフォームに依存しないコアエンジンであり、それ自体ではネイティブ Chromium バイナリをバンドルしていません(Linux では IronPdf.Linux を追加します)。 IronPdfは両方のプラットフォームの埋め込みバイナリを含みます。
ステップ3: Dockerfile に Linux の依存関係をインストールする
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
完全な AWS Lambda Docker 構成については、AWS デプロイメントガイドを参照してください。

