リモートコンテナとしてIronPDFを実行する
IronPdfEngineは、PDFの作成、書き込み、編集、読み取りを処理できるスタンドアロンのサービスです。 IronPDF Dockerは、互換性のあるバージョンのIronPDFを使用して、Dockerサービスを実行する準備ができています。(バージョン2023.2.x以上). これにより、開発者はIronPDFで発生する可能性のあるデプロイメントの問題を解消することができます。
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の使用方法
IronPDF をインストール
IronPdf.Slim Nugetパッケージをプロジェクトに追加します。
https://www.nuget.org/packages/IronPdf.Slim/
注: IronPdf
、IronPdf.Linux
、およびIronPdf.MacOs
パッケージにはすべてIronPdf.Slimが含まれています。
アプリケーションのサイズを削減するために、IronPdf.Slim のインストールをお勧めします。 IronPdf.Native.Chrome.xxx
パッケージはもう使用されていないため、プロジェクトから削除しても構いません。
必要なコンテナバージョンを決定する
デフォルトでは、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
Dockerコンテナ用IronPDFのセットアップ
Docker Composeなしで
前のステップのバージョンを使用して、Dockerコンテナを実行します。
-
Dockerをインストールする必要があります。
セットアップ
-
https://hub.docker.com/r/ironsoftwareofficial/ironpdfengine にアクセスしてください。
- 最新のironsoftwareofficial/ironpdfengineイメージをプルする
docker pull ironsoftwareofficial/ironpdfengine
または、特定のバージョンを取得(推奨される)
docker pull ironsoftwareofficial/ironpdfengine:2023.12.6
-
ironsoftwareofficial/ironpdfengine コンテナを実行します。
このコマンドはコンテナを作成し、ポート33350でバックグラウンドで実行します。
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.12.6
Docker Composeを使用して
キーは、IronPdfEngineとアプリケーションがお互いに見えるようにするDockerネットワークを設定することです。 アプリケーションが起動する前に IronPdfEngine が稼働するようにするために、'depends_on' を設定します。
セットアップ
- 以下のテンプレートを使用して、最初に
docker-compose.yml
ファイルを作成します。 Docker Composeファイルの設定を行ってください。
version: "3.6"
services:
myironpdfengine:
container_name: ironpdfengine
image: ironsoftwareofficial/ironpdfengine:latest
ports:
- "33350:33350"
networks:
- ironpdf-network
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
depends_on:
myironpdfengine:
condition: service_started
networks:
ironpdf-network:
driver: "bridge"
-
アプリケーション内でIronPdfエンジンのアドレスを設定する(マイコンソールアプリ)"myironpdfengine:33350" へ
- Docker Compose を実行
docker compose up --detach --force-recreate --remove-orphans --timestamps
IronPdfEngineに接続
IronPDFコードを実行すると、アプリはDocker内のIronPdfEngineと通信します。!
:path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-use.cs
using IronPdf;
using IronPdf.GrpcLayer;
// Configure for Docker container
var config = new IronPdfConnectionConfiguration();
config.ConnectionType = IronPdfConnectionType.Docker;
IronPdf.Installation.ConnectToIronPdfHost(config);
// Use IronPDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>");
pdf.SaveAs("ironpdf.pdf");
Imports IronPdf
Imports IronPdf.GrpcLayer
' Configure for Docker container
Private config = New IronPdfConnectionConfiguration()
config.ConnectionType = IronPdfConnectionType.Docker
IronPdf.Installation.ConnectToIronPdfHost(config)
' Use IronPDF
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>")
pdf.SaveAs("ironpdf.pdf")
AWS ECSにIronPdfEngineをデプロイする
前提条件
- IronPdfEngineのDockerイメージをプルします。 これはDockerコンテナ用IronPDFのセットアップ上記。
- ECS にアクセスできる AWS アカウント。
セットアップ
-
ECSクラスタを作成します。 このガイドに従ってくださいコンソールを使用したFargateおよび外部起動タイプのクラスタの作成.
-
タスク定義を作成する。 このガイドに従ってくださいコンソールを使ってタスク定義を作成する.
推奨設定:
- AWS Fargate (AWSファーゲート)
- 最低1つのvCPUと2GBのRAMが推奨されます。 ご利用のワークロードによっては、ページ数が10ページ以上のPDFを扱う場合や高負荷のリクエストが発生する場合には、より高いプランを選択してください。
- ネットワークモード: awsvpc
- ポートマッピング:
"containerPort": 33350,
"hostPort": 33350,
"protocol": "tcp",
"appProtocol": "grpc"
- イメージ URI: 当社の任意のIronPdfEngineを指す。 例えば、"ironsoftwareofficial/ironPdfEngine:2024.1.20" のようにします。(DockerHubより)
- AWSパーミッション と ネットワーキング はご自身で設定してください
- Amazon CloudWatchを有効にすることをお勧めします。 (ログを有効にする)
- アプリケーションコンテナを同じタスク定義でデプロイする場合、コンテナの起動順序が必要です。
-
タスク定義を実行します。 タスク定義はタスクまたはサービスとして実行できます。 このガイドに従ってくださいコンソールを使用したサービスの作成.
推奨設定:
- 起動タイプ:AWS Fargate
- パブリックIP: テストではオン、本番環境ではオフ。 セキュリティとAWSネットワーキングは自己責任で行う必要があります。
-
お楽しみください! IronPdfEngine Dockerは、AWSで稼働しています!
次の内容にご注意ください。
水平スケーリングはサポートされていません。 情報文を日本語に翻訳しますね:以下をご参照くださいIronPdfEngineの制限詳細については。
Azure Container Instances に IronPdfEngine をデプロイする
前提条件
- IronPdfEngineのDockerイメージをプルします。 これはDockerコンテナ用IronPDFのセットアップ上記。
- Azure アカウント
セットアップ
-
Azureコンテナを作成する。 以下に従ってください。Azureポータルを使用したAzureでのコンテナインスタンスのデプロイに関するクイックスタートガイド.
推奨設定:
- **画像ソースその他のレジストリ
- 画像: ironsoftwareofficial/ironpdfengine:2024.1.20(Docker Hubから)
- OSタイプ: Linux
- サイズ: 最低1つのvCPUと2GiBのメモリ、またはそれ以上
- ポート: TCPポート 33350
-
お楽しみください! IronPdfEngineのDockerがAzure Container Instancesで稼働しています!
次の内容にご注意ください。
水平スケーリングはサポートされていません。 情報文を日本語に翻訳しますね:以下をご参照くださいIronPdfEngineの制限詳細については。
AWS ECRパブリックギャラリーでIronPdfEngineを取得する
前提条件
- Dockerをインストールする必要があります。
セットアップ
-
https://gallery.ecr.aws/v1m9w8y1/ironpdfengine にアクセスしてください
- v1m9w8y1/ironpdfengine イメージをプル하십시오
docker pull https://gallery.ecr.aws/v1m9w8y1/ironpdfengine
または、特定のバージョンを取得(推奨される)
docker pull https://gallery.ecr.aws/v1m9w8y1/ironpdfengine:2023.12.6
-
ironpdfengineコンテナを実行する。
このコマンドはコンテナを作成し、ポート33350でバックグラウンドで実行します。
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
IronPdfクライアントをIronPdfEngineを利用するように設定する方法については、セクション「コードをIronPdfEngineを使用するように更新する."
マーケットプレイスからIronPdfEngineを入手する
迅速に始められるように、AzureとAWSの両方のマーケットプレイスにIronPdfEngineを設定しました。
Azure マーケットプレイス
セットアップ
-
移動Azure MarketplaceのIronPDF Dockerコンテナ. 「Get It Now」と「Continue」をクリックしてください。
-
"Kubernetesサービスを作成するために、「基本」、「クラスタ詳細」および「アプリケーション詳細」を完了してください。"
- デプロイが完了したら、左側のサイドバーで Kubernetes resources -> Run command に移動します。 次のコマンドを実行します:
kubectl get services
EXTERNAL-IPとPORTの情報を使用して(S), IronPDFEngine 接続を適切に構成できます。
:path=/static-assets/pdf/content-code-examples/how-to/pull-run-ironpdfengine-azure-marketplace.cs
using IronPdf; using IronPdf.GrpcLayer; IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"; IronPdfConnectionConfiguration configuration = new IronPdfConnectionConfiguration(); configuration.ConnectionType = IronPdfConnectionType.RemoteServer; configuration.Host = "http://48.216.143.233"; configuration.Port = 80; IronPdf.Installation.ConnectToIronPdfHost(configuration); ChromePdfRenderer renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>"); pdf.SaveAs("output.pdf");
Imports IronPdf Imports IronPdf.GrpcLayer IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01" Dim configuration As New IronPdfConnectionConfiguration() configuration.ConnectionType = IronPdfConnectionType.RemoteServer configuration.Host = "http://48.216.143.233" configuration.Port = 80 IronPdf.Installation.ConnectToIronPdfHost(configuration) Dim renderer As New ChromePdfRenderer() Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>testing</h1>") pdf.SaveAs("output.pdf")
VB C#AWS マーケットプレイス
前提条件
- Dockerをインストールする必要があります。
-
AWS CLIをインストールし、ログインしている必要があります。
セットアップ
-
移動AWSマーケットプレイスのIronPdfEngine. 「続行して購読」をクリックしてください。
-
利用規約に同意する。
-
設定に進む。
- ironpdfengineのイメージをプルします。 このステップでは、ironpdfengine イメージをプルするコマンドを表示します。
例:
aws ecr get-login-password \ --region us-east-1 docker login \ --username AWS \ --password-stdin 000000000000.dkr.ecr.us-east-1.amazonaws.com CONTAINER_IMAGES="000000000000.dkr.ecr.us-east-1.amazonaws.com/iron-software/ironpdfengine:2024.1.15" for i in $(echo $CONTAINER_IMAGES sed "s/,/ /g"); do docker pull $i; done
- ironpdfengineコンテナを実行します。 このコマンドはコンテナを作成し、ポート33350でバックグラウンドで実行します。
docker run -d -p 33350:33350 000000000000.dkr.ecr.us-east-1.amazonaws.com/iron-software/ironpdfengine:2024.1.15