独自のIronPDF Dockerコンテナをホスティングする

This article was translated from English: Does it need improvement?
Translated
View the article in English
IronPDF v.2023.2.x以降でのみ動作します

IronPdfEngineは、PDFの作成、書き込み、編集、および読み取りを処理できるgRPCサービスです。

IronPDF Dockerは、互換性のあるバージョンのIronPDFを使用して、Dockerサービスを実行する準備ができています。 (バージョン2023.2.x以上). これにより、開発者はIronPDFで発生する可能性のあるデプロイメントの問題を解消することができます。

なぜ

IronPDFの動作には、ChromeとPdfiumのバイナリが必要です。これらは非常に大きなファイルサイズです。 (数百MB). それには、マシンにいくつかの依存関係がインストールされていることが必要です。

この方法を使用することで、クライアントのサイズがわずかに抑えられます。 (MB単位で).

デプロイメント問題を避ける

環境やコンテナを正しく構成してすべての依存関係を含めることは難しい場合があります。 IronPDF Dockerコンテナを使用することで、IronPDFが_プリインストール_され、_確実_に動作することが保証されており、デプロイや依存関係の問題を回避できます。

バージョン

IronPDFのDockerタグは、IronPdfEngineのバージョンに基づいています。 それはIronPDF製品のバージョンとは異なります。

各IronPDFバージョンには、それに関連付けられたIronPdfEngineバージョンが存在します。 バージョン番号はIronPDF Dockerのバージョンと一致する必要があります

例:IronPDF for Javaバージョン2023.2.1には、IronPdfEngineバージョン2023.2.1が必要です。 異なるバージョンの IronPdfEngine と IronPDF を使用することはできません。

IronPDF Dockerの使用方法

ステップ1 - IronPDFのインストール

IronPdf.Slim Nugetパッケージをプロジェクトに追加します。

https://www.nuget.org/packages/IronPdf.Slim/

詳細情報: https://ironpdf.com/docs/

注: IronPdfIronPdf.Linux、およびIronPdf.MacOsパッケージにはすべてIronPdf.Slimが含まれています。

アプリケーションのサイズを削減するために、IronPdf.Slim のインストールをお勧めします。 IronPdf.Native.Chrome.xxx パッケージはもう使用されていないため、プロジェクトから削除しても構いません。

ステップ2 - 必要なコンテナバージョンを決定

デフォルトでは、IronPDF for DockerバージョンはNuGetでの現在のIronPDFバージョンに一致します。

手動でバージョンを確認することでも追加確認ができます:

:path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-version.cs
string ironPdfEngineVersion = IronPdf.Installation.IronPdfEngineVersion;
Dim ironPdfEngineVersion As String = IronPdf.Installation.IronPdfEngineVersion
VB   C#

Step 3 - Dockerコンテナ用IronPDFのセットアップ

ステップ3.i - Docker Composeを使用しない場合

前のステップのバージョンを使用してDockerコンテナを実行します。

例:IronPDF for Docker version e.g. 2023.2.1の場合: もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

docker network create -d bridge --attachable --subnet=172.19.0.0/16 --gateway=172.19.0.1 ironpdf-network

以下の内容を日本語に翻訳してください:

docker run -d -e IRONPDF_ENGINE_LICENSE_KEY=MY_LICENSE_KEY --network=ironpdf-network --ip=172.19.0.2 --name=ironpdfengine --hostname=ironpdfengine -p 33350:33350 ironsoftwareofficial/ironpdfengine:2023.2.1

まず、コマンド自体は翻訳の必要がないので、そのまま表示します。

docker run -d -e IRONPDF_ENGINE_LICENSE_KEY=MY_LICENSE_KEY --network=ironpdf-network --ip=172.19.0.2 --name=ironpdfengine --hostname=ironpdfengine -p 33350:33350 ironsoftwareofficial/ironpdfengine:2023.2.1 もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

ポート33350は、IronPdfEngineのデフォルト内部ポートです。

IronPDF for Docker が現在稼働中です!

ステップ 3.ii - Docker Composeを利用する

以下のテンプレートを使用して、Docker Composeファイルを設定してください:

version: "3.3"

services:
  ironpdfengine:
    container_name: ironpdfengine
    image: ironsoftwareofficial/ironpdfengine:latest
    networks:
      ironpdf-network:
        ipv4_address: 172.19.0.2
  myconsoleapp:
    container_name: myconsoleapp
    build:
      # enter YOUR project directory path here
      context: ./MyConsoleApp/
      # enter YOUR dockerfile name here, relative to project directory
      dockerfile: Dockerfile
    networks:
      ironpdf-network:
        ipv4_address: 172.19.0.3
    depends_on:
      ironpdfengine:
        condition: service_started

networks:
  ironpdf-network:
    driver: bridge
    ipam:
      config:
        - subnet: 172.19.0.0/16
          gateway: 172.19.0.1
YAML

そして、次のようにdocker composeコマンドを実行します:

docker compose up --detach --force-recreate --remove-orphans --timestamps

ステップ 4 - IronPDF クライアントを設定する

次の行を追加してください:

:path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-configure.cs
using IronPdf.GrpcLayer;

var config = new IronPdfConnectionConfiguration();
config.ConnectionType = IronPdfConnectionType.Docker;
IronPdf.Installation.ConnectToIronPdfHost(config);
Imports IronPdf.GrpcLayer

Private config = New IronPdfConnectionConfiguration()
config.ConnectionType = IronPdfConnectionType.Docker
IronPdf.Installation.ConnectToIronPdfHost(config)
VB   C#

ステップ 5 - 楽しむ

IronPDFコードを実行すると、アプリはDocker内のIronPdfEngineと通信します。!

クライアントテストコード

:path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-use.cs
using IronPdf;
using IronPdf.GrpcLayer;

var config = new IronPdfConnectionConfiguration();
config.ConnectionType = IronPdfConnectionType.Docker;
IronPdf.Installation.ConnectToIronPdfHost(config);

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>");
pdf.SaveAs("ironpdf.pdf");
Imports IronPdf
Imports IronPdf.GrpcLayer

Private config = New IronPdfConnectionConfiguration()
config.ConnectionType = IronPdfConnectionType.Docker
IronPdf.Installation.ConnectToIronPdfHost(config)

Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>")
pdf.SaveAs("ironpdf.pdf")
VB   C#