既存のDockerコンテナへのIronPDFの追加
IronPDF for .NET Standardは、LinuxおよびWindows向けのAzure Dockerコンテナを含め、Dockerを完全にサポートするようになりました。
代わりに、IronPDFを独立したDockerコンテナとしてデプロイしますか? IronPdfEngine チュートリアルガイドの詳細はこちらをご覧ください。
AzureでDockerを使用する理由とは?
Azure上のDockerコンテナは、優れたEnterpriseレベルのスケーラビリティに加え、通常のWebAppよりも多くの権限を有しています。これにより、GDI+グラフィックスへのシステムアクセスが有効化されるため、SVGフォントのレンダリングが可能になります。
IronPDF および Linux Primer
.NET での Docker 利用が初めての方は、Docker のデバッグ環境のセットアップや Visual Studio プロジェクトとの統合について解説した、こちらの優れた記事をお読みになることをお勧めします。
また、IronPDF Linux セットアップおよび互換性ガイドもぜひご一読ください。
推奨されるLinux Dockerディストリビューション
IronPDFの"簡単な設定"には、以下の最新の64ビットLinux OSをお勧めします。
- Ubuntu 24 (Noble)
- Ubuntu 22
- Ubuntu 20
- Ubuntu 18
- Debian 11
- Debian 10
- CentOS 8
- Amazon AWS Linux 2 "IronPDF AWS Lambda セットアップガイド"を参照
.NET については、Microsoft の公式 Docker イメージの使用を推奨します。 その他のLinuxディストリビューションも一部対応していますが、手動での設定が必要になる場合があります。 "Linux マニュアルセットアップ"ガイドをご覧ください。
IronPDF Linux Docker インストール
Linux 向けに最適化された NuGet パッケージを使用する
ディスク容量を節約し、Dockerインスタンスの起動時にアセットがダウンロードされるのを防ぐため、通常のIronPDFパッケージではなく、IronPdf.Linux NuGetパッケージの使用をお勧めします。 ご安心ください。WindowsやmacOSでの開発でも問題なく動作します。Linux向けに最適化されているだけです。
Install-Package IronPdf.Linux
別の解決策として、通常の IronPDF NuGet パッケージの上に IronPdf.Native.Chrome.Linux を追加する方法もあります。
Install-Package IronPdf.Native.Chrome.Linux
自動依存関係インストールの回避
多くのユーザーから、LinuxAndDockerDependenciesAutoConfigをfalseに設定すると、LinuxおよびDockerでの結果が改善されるという報告があります。 これは、Docker ファイル内の apt-get 形式のパッケージマネージャーによって、前提条件となるパッケージがすでにインストールされているためです。
// Disable automatic configuration of Linux and Docker dependencies
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;
// Disable automatic configuration of Linux and Docker dependencies
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;
' Disable automatic configuration of Linux and Docker dependencies
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = False
GPUアクセラレーションを無効にする
LinuxのDockerコンテナでは、GPUにアクセスできないことがよくあります。 GPU アクセラレーションはデフォルトで無効になっています。 ChromeGpuModes.Enabled を有効にしている場合は、Docker デプロイメントではこれを無効にすることを強く推奨します:
// Disable GPU acceleration for Docker environments
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
// Disable GPU acceleration for Docker environments
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
' Disable GPU acceleration for Docker environments
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled
Ubuntu Linux Docker ファイル
Ubuntu 24 with .NET 10
Ubuntu 24.04 (Noble) では 64 ビットの time_t 移行パッケージが使用されているため、一部のライブラリ名は以前の Ubuntu バージョンとは異なります(例:libasound2 の代わりに libasound2t64)。
# Build stage
FROM mcr.microsoft.com/dotnet/sdk:10.0-noble AS build
WORKDIR /app
COPY *.csproj .
RUN dotnet restore
COPY . .
RUN dotnet publish -c Release -o /app/publish
# Runtime stage
FROM mcr.microsoft.com/dotnet/aspnet:10.0-noble AS runtime
# Install IronPDF dependencies for Ubuntu 24.04 Noble (64-bit transition libraries)
RUN apt-get update && apt-get install -y \
libasound2t64 \
libatk1.0-0t64 \
libatk-bridge2.0-0t64 \
libcairo2 \
libcups2t64 \
libdbus-1-3 \
libdrm2 \
libexpat1 \
libfontconfig1 \
libgbm1 \
libglib2.0-0t64 \
libgtk-3-0t64 \
libnspr4 \
libnss3 \
libpango-1.0-0 \
libpangocairo-1.0-0 \
libx11-6 \
libxcb1 \
libxcomposite1 \
libxdamage1 \
libxext6 \
libxfixes3 \
libxkbcommon0 \
libxrandr2 \
fonts-liberation \
wget \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY --from=build /app/publish .
ENTRYPOINT ["dotnet", "YourApp.dll"]
Ubuntu 24 with .NET 8
.NET 8 LTS と Ubuntu 24.04 LTS の組み合わせは、一般的な本番環境構成です。 64ビット移行ライブラリの名称は、これらと同じものを使用します。
# Build stage
FROM mcr.microsoft.com/dotnet/sdk:8.0-noble AS build
WORKDIR /app
COPY *.csproj .
RUN dotnet restore
COPY . .
RUN dotnet publish -c Release -o /app/publish
# Runtime stage
FROM mcr.microsoft.com/dotnet/aspnet:8.0-noble AS runtime
# Install IronPDF dependencies for Ubuntu 24.04 Noble (64-bit transition libraries)
RUN apt-get update && apt-get install -y \
libasound2t64 \
libatk1.0-0t64 \
libatk-bridge2.0-0t64 \
libcairo2 \
libcups2t64 \
libdbus-1-3 \
libdrm2 \
libexpat1 \
libfontconfig1 \
libgbm1 \
libglib2.0-0t64 \
libgtk-3-0t64 \
libnspr4 \
libnss3 \
libpango-1.0-0 \
libpangocairo-1.0-0 \
libx11-6 \
libxcb1 \
libxcomposite1 \
libxdamage1 \
libxext6 \
libxfixes3 \
libxkbcommon0 \
libxrandr2 \
fonts-liberation \
wget \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY --from=build /app/publish .
ENTRYPOINT ["dotnet", "YourApp.dll"]
Ubuntu 22 with .NET 8
Ubuntu 22 with .NET 7
Ubuntu 20 with .NET 6
Ubuntu 20 with .NET 5
Ubuntu 20 with .NET 3.1 LTS
Ubuntu 18 with .NET 3.1 LTS
Debian Linux Docker ファイル
Debian 12 with .NET 8
Debian 11 with .NET 7
Debian 11 with .NET 6
Debian 11 with .NET 5
Debian 11 with .NET 3.1 LTS
Debian 10 with .NET 5
Debian 10 with .NET 3.1 LTS
Alpine Linux Docker ファイル
Alpine Linux での IronPDF の実行はサポートされていません。 できればそうしたいのですが、できません。 率直に言って、私たちはAlpineを高く評価しており、このプロジェクトが継続・発展することを願っています。 2023年現在、Alpineは依然として旧式の"musl"C言語ライブラリを使用しており、Chromium開発者がこのOSを完全にサポートするには至っていません。
.NET 6 での Alpine Docker と IronPdfEngine の使用
IronPDFは、IronPDFの全機能を含むコンテナイメージを提供しています。 これにより、Alpine上で実行されているプロジェクトは、IronPdfEngineコンテナに接続することでIronPDの機能を利用できるようになります。
ステップ 1: IronPDF Engine Docker イメージを取得して実行する
ターミナルで以下のコマンドを実行し、IronPDF EngineのDockerイメージを取得して実行してください:
# Pull the IronPDF Engine Docker Image
docker pull ironsoftwareofficial/ironpdfengine
# Pull the IronPDF Engine Docker Image
docker pull ironsoftwareofficial/ironpdfengine
# Run the IronPDF Engine Docker container
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
# Run the IronPDF Engine Docker container
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
ステップ 2: コンソール アプリのセットアップ
.NET 6 をターゲットとする新しいコンソール アプリケーションを作成します。NuGet パッケージ マネージャーを使用して、IronPdf.Slim NuGet パッケージをインストールします。
Windows Docker ファイル
Windows Docker コンテナは、より高いレベルのパフォーマンスとスケーラビリティを提供し、開発者がインスタンスをより自由に構成できるため、Azure上でますます人気が高まっています。
IronPDFは、Azure上のDockerコンテナ(WindowsまたはLinux)内において、グラフィックスライブラリや仮想グラフィックスカードへのアクセスレベルが高いため、より魅力的なテキストレンダリングを実現します。
記事"Visual Studio Container Tools for Docker"は、非常に優れた入門ガイドです。
これは、.NET Core 3.1 用の Windows コンテナ Dockerfile の例です。
Windows Server 2019 .NET 6.0
事前構成済みの Windows コンテナには、IronPDF を実行するために必要なすべての依存関係が含まれています。
IronPDF を実行するための追加の事前構成済みイメージについては、Docker リポジトリをご覧ください。
よくある質問
.NETライブラリをDockerコンテナに統合する方法は?
IronPDFという.NETライブラリをDockerコンテナに統合するには、Microsoftの公式DockerイメージとLinux向けのIronPdf.Linux NuGetパッケージ、またはWindows環境用の事前設定されたWindows Dockerコンテナを使用します。
AzureでPDF操作にDockerコンテナを使用する利点は何ですか?
AzureでPDF操作にDockerコンテナを使用することで、エンタープライズのスケーラビリティが向上し、通常のWebAppsよりも多くの権限が得られます。このセットアップは、GDI+のグラフィックスアクセスを通じてSVGフォントのレンダリングなどの高度な機能を有効にするのに理想的です。
Dockerで.NET PDFライブラリを実行するのに最適なLinuxディストリビューションはどれですか?
DockerでIronPDFを実行するのに最適なLinuxディストリビューションには、設定と互換性が簡単なUbuntu 18/20/22、Debian 10/11、CentOS 8、Amazon AWS Linux 2があります。
Linux Dockerコンテナで.NET PDFライブラリのパフォーマンスを最適化する方法は?
パフォーマンスを最適化するには、IronPdf.Linuxパッケージを使用し、自動依存関係インストールを無効にし、GPUアクセラレーションを無効にしてIronPdf.Installation.ChromeGpuModeをIronPdf.Engines.Chrome.ChromeGpuModes.Disabledに設定します。
Dockerコンテナ内でAlpine LinuxにIronPDFを実行できますか?
IronPDFは'musl'ライブラリとの互換性がないため、Alpine Linuxをネイティブにサポートしていません。Alpine LinuxでIronPDFを使用するには、IronPDFEngine Dockerコンテナを介して実行することを検討してください。
事前設定されたDockerコンテナを.NETライブラリで使用する目的は何ですか?
事前設定されたDockerコンテナは、IronPDFを効率的に実行するために必要なすべての依存関係を提供し、特にAzureなどのプラットフォームにデプロイするときに、高性能とスケーラビリティを確保します。
Dockerで.NETアプリケーションのため for .NET PDFライブラリをどのように構成しますか?
Dockerで.NETアプリケーションのためにIronPDFを構成するには、LinuxとWindowsのDockerコンテナに統合し、マイクロサービスアーキテクチャ内で堅牢なPDF機能を有効にします。
.NETライブラリをDockerでデプロイするための推奨手順は何ですか?
推奨される手順には、IronPdf.LinuxのようなLinuxに最適化されたパッケージを使用し、自動依存関係インストールを無効にし、Docker環境でのランタイム中に遅延を防ぐためにIronPDFを事前に初期化します。
.NET 6.0を実行しているWindows Server 2019 Dockerコンテナで.NET PDFライブラリをどのようにセットアップしますか?
.NET 6.0でIronPDFを実行するためのすべての必要な依存関係と構成を含む事前設定されたDockerfileを使用して、Windows Server 2019 Dockerコンテナで.NET PDFライブラリをセットアップします。
Dockerのセットアップで.NETライブラリのGPUアクセラレーションを無効にする理由は?
DockerでIronPDFのGPUアクセラレーションを無効にすると、GPUリソースが限られた環境でのグラフィック関連の問題を避けることにより、よりスムーズなデプロイメントとパフォーマンスをもたらします。

