Linux ARM64でDocker上でIronPDFを実行する

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

IronPDF のレンダラーは Chromium Embedded Framework (CEF) に基づいており、ARM および ARM64 では Linux の動的リンクがデフォルトで予約するよりも多くのスレッドローカルストレージ (TLS) を必要とします。回避策がない場合、libcef.so の読み込みは cannot allocate memory in static TLS block で失敗します。 修正は、libcef.soLD_PRELOAD 環境変数を通じてプレロードし、他のものがロードされる前にリンカーが十分な TLS を予約できるようにすることです。

ベアエラーメッセージと非Dockerの修正については、Linux ARMでのIronPDF:静的TLSブロックにメモリを割り当てることができませんをご覧ください。 この記事はコンテナ内で同じ修正を適用します。

DockerfileでのLD_PRELOADの設定

変数を ENV 命令として追加し、IronPDF に同梱されている ARM64 ネイティブライブラリを指すようにしてください。

ENV LD_PRELOAD=/app/runtimes/linux-arm64/native/libcef.so

サンプルDockerfile

このマルチステージ Dockerfile は .NET 8 上で ARM64 用に IronPDF アプリを構築および実行し、CEF が依存するネイティブライブラリをインストールし、最終イメージで LD_PRELOAD を設定します。

# Base image for runtime (ARM64)
FROM mcr.microsoft.com/dotnet/runtime:8.0 AS base
USER root
WORKDIR /app
RUN apt update \
    && apt install -y sudo 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 libgdiplus libva-dev
# Base image for build (ARM64)
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
COPY . .
RUN dotnet publish -c Release -o /app/publish
# Final image with IronPdf and system dependencies
FROM base AS final
WORKDIR /app
ENV LD_PRELOAD=/app/runtimes/linux-arm64/native/libcef.so
COPY --from=build /app/publish .
ENTRYPOINT ["dotnet", "IronPdfLinuxArm.dll"]

LD_PRELOAD を、libcef.so が実際にイメージ内に配置されるパスに設定してください。 上記の値はデフォルトの runtimes/linux-arm64/native/ レイアウトと一致します。 基盤の制限はCEFフォーラムで追跡されています。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 20,296,129 | バージョン: 2026.7 リリースされたばかり
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronPdf
サンプルを実行するHTML が PDF に変換されるのを確認します。