IronPDF 始める DockerでIronPDFEngineをホストし使用する リモートコンテナとしてIronPDFを実行する カーティス・チャウ 更新日:2025年12月3日 IronPDF をダウンロード NuGet ダウンロード DLL ダウンロード Windows 版 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る This article was translated from English: Does it need improvement? Translated View the article in English IronPdfEngine は、PDF の作成、書き込み、編集、および読み取りを処理できるスタンドアロンサービスです。 IronPDF Docker は、IronPDF(v2023.2.x 以上)と互換性のあるバージョンで Docker サービスを実行する準備が整いました。 これにより、開発者は 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.Linux、および IronPdf.MacOs パッケージにはすべてIronPdf.Slim が含まれています。 アプリケーションサイズを削減するために、IronPdf.Slim のみをインストールすることをお勧めします。 パッケージ IronPdf.Native.Chrome.xxx は使用されなくなったため、プロジェクトから削除できます。 必要なコンテナバージョンを決定する デフォルトでは、Docker 用の IronPDF バージョンは NuGet の現在の IronPDF バージョンと一致します。 以下のコードを使用してバージョンを手動で確認することができます。 :path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-version.cs string ironPdfEngineVersion = IronPdf.Installation.IronPdfEngineVersion; $vbLabelText $csharpLabel Docker コンテナに IronPDF をセットアップする Docker Compose なし 前の手順で得たバージョンを使用して、Docker コンテナを実行します。 Docker をインストールする必要があります。 セットアップ https://hub.docker.com/r/ironsoftwareofficial/ironpdfengine に移動します。 最新の ironsoftwareofficial/ironpdfengine イメージをプルします。 docker pull ironsoftwareofficial/ironpdfengine docker pull ironsoftwareofficial/ironpdfengine SHELL または特定のバージョン(推奨)をプルします。 docker pull ironsoftwareofficial/ironpdfengine:2025.3.6 docker pull ironsoftwareofficial/ironpdfengine:2025.3.6 SHELL ironsoftwareofficial/ironpdfengine コンテナを実行します。 このコマンドは、コンテナを作成し、ポート 33350 でバックグラウンドで実行します。 docker run -d -p 33350:33350 -e IRONPDF_ENGINE_LICENSE_KEY=MY_LICENSE_KEY ironsoftwareofficial/ironpdfengine:2025.3.6 docker run -d -p 33350:33350 -e IRONPDF_ENGINE_LICENSE_KEY=MY_LICENSE_KEY ironsoftwareofficial/ironpdfengine:2025.3.6 SHELL Docker Compose を使用する 鍵は、IronPdfEngine とアプリケーションがお互いを見れるようにする Docker ネットワークをセットアップすることです。 'depends_on' を設定して、アプリケーションが開始する前に IronPdfEngine が稼働していることを確認します。 セットアップ まず、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' アプリケーション(myconsoleapp)内の IronPdfEngine のアドレスを "myironpdfengine:33350" に設定します。 Docker Compose を実行します。 docker compose up --detach --force-recreate --remove-orphans --timestamps docker compose up --detach --force-recreate --remove-orphans --timestamps SHELL 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 = IronPdfConnectionConfiguration.Docker; config.Host = "localhost"; IronPdf.Installation.ConnectToIronPdfHost(config); // Use IronPDF ChromePdfRenderer renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>"); pdf.SaveAs("ironpdf.pdf"); $vbLabelText $csharpLabel 接続タイプ 作成する接続タイプに応じて割り当てることができるいくつかの IronPdfConnectionType があります。 利用可能なプロパティのリストは次のとおりです。 LocalExecutable: ローカルマシンで実行可能ファイルを実行する IronPdfEngine "サーバ" に接続するには、このオプションを使用します。 簡単な例として、クラウドサービスに依存せずにローカルで PDF を生成する WinForm 請求書アプリケーションです。 Docker: ローカルまたはクラウドで Docker コンテナに接続しようとする場合、このオプションを使用します。 RemoteServer: クラウドの IronPdfEngine 用に使用されるオプションです。 これは、HTTP または HTTPS プロトコルを介してクラウドホストされた(例: Docker)IronPdfEngine インスタンスに接続します。 これはリモートサーバーに接続しているため、完全なURL(HTTPまたはHTTPSプロトコルを含む)が必要になります。 Custom: 接続に対する完全な制御とカスタマイズのために、このオプションを使用できます。 このオプションは、上記の他の定義済みのオプションではなく、カスタム定義された Grpc.Core.ChannelBase を使用します。 開発者は、新しい Grpc.Core.Channel オブジェクトを作成するか、Grpc.Net.Client.GrpcChannel.ForAddress(System.String) を使用して gRPC チャネルをカスタムし、完全制御を行うことで、新しいチャネルを作成できます。 NetFrameworkChannel を使った .NET Framework .NET Framework では、gRPC が .NET Framework プロジェクトで異なる方法で動作するため、異なるセットアップが必要です。 この方法を機能させるために、Grpc.Core NuGet パッケージがインストールされていることを確認してください。 この特定のセットアップには、Grpc.Core.ChannelBase から派生したカスタム gRPC チャネルを使用します。 接続チャネルを実装し、IronPDFEngine を使用して PDF を作成し保存する例を見てみましょう。 ヒントgRPC は.NET Frameworkプロジェクトでは異なる動作をするため、次のコードが機能しない場合は、アドレスから <http> または <https> プレフィックスを削除してみてください。 pdf.Disposeが必要であることに注意してください。 :path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-use-grpc.cs using IronPdf; // This code demonstrates how to use IronPdf with gRPC in a .NET Framework application. // 1. Configure connection to use local IronPdfEngine executable var config = IronPdf.GrpcLayer.IronPdfConnectionConfiguration.Executable; // 2. Connect to the IronPDF host with the executable configuration IronPdf.Installation.ConnectToIronPdfHost(config); // 3. Create a PDF renderer instance ChromePdfRenderer renderer = new ChromePdfRenderer(); // 4. Render HTML string as PDF document PdfDocument pdf = renderer.RenderHtmlAsPdf("Hello world"); // 5. Save the PDF to disk pdf.SaveAs("output.pdf"); // 6. Clean up , this is needed to work pdf.Dispose(); $vbLabelText $csharpLabel WithCustomChannel を使用した代替方法 別の方法としては、IronPdf.GrpcLayer によって提供される WithCustomChannel メソッドを利用することです。 WithCustomChannel は、カスタム gRPC チャネルである customChannel と、metadata の 2 つのパラメータを受け取ります。 metadata パラメータはオプションであり、デフォルトでは null に設定されています。 :path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-use-grpc-alt.cs using IronPdf; using IronPdf.GrpcLayer; using Grpc.Core; // 1. Create custom gRPC channel (.NET Framework style) var channel = new Channel("123.456.7.8:80", ChannelCredentials.SecureSsl); // 2. (Optional) Add metadata headers if needed var metadata = new Metadata { { "Authorization", "Bearer your_token_here" } }; // 3. Configure IronPDF with custom channel var config = IronPdfConnectionConfiguration.WithCustomChannel(channel, metadata); IronPdf.Installation.ConnectToIronPdfHost(config); // 4. Generate PDF var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("Hello world"); // 5. Save the PDF to disk pdf.SaveAs("output.pdf"); // 6. Clean up , this is needed to work pdf.Dispose(); $vbLabelText $csharpLabel IronPdfEngine を AWS ECS にデプロイする 前提条件 IronPdfEngine Docker イメージをプルします。 これは上記の Docker コンテナの IronPDF のセットアップ にあります。 ECS へのアクセス権限を持つ AWS アカウント。 セットアップ ECS クラスターを作成します。 ECS クラスターをコンソールを使用して Fargate および External 起動タイプのクラスターを作成するためのガイド に従ってください。 タスク定義を作成します。 コンソールを使用してタスク定義を作成するためのガイド に従ってください。 推奨設定: AWS Fargate 最小 1 vCPU と 2 GB の RAM を推奨します。 PDF が 10 ページ以上であるか、重い負荷要求があるワークロードの場合は、より高い層を選択してください。 ネットワーク モード: awsvpc ポートマッピング: { "containerPort": 33350, "hostPort": 33350, "protocol": "tcp", "appProtocol": "grpc" } イメージ URI: 任意の IronPdfEngine を指します。 たとえば、"ironsoftwareofficial/ironpdfengine:2024.1.20"(DockerHub から) AWS パーミッションとネットワーキングは自己責任で Amazon CloudWatch の有効化を推奨します。 (Enable logging) コンテナの起動順は、同じタスク定義にアプリケーションのコンテナをデプロイしたい場合に必要です。 タスク定義を実行します。 タスク定義を タスク または サービス として実行することができます。 コンソールを使用してサービスを作成するためのガイド に従ってください。 推奨設定: Launch type: AWS Fargate Public IP: Turned on for test and Turned off for production. Security and AWS Networking are on your own. Enjoy! IronPdfEngine docker is up and running in your AWS! ご注意Horizontal scaling is not supported. 詳しくはIronPdfEngineの制限を参照してください。 AzureコンテナインスタンスにIronPdfEngineをデプロイ 前提条件 IronPdfEngine Docker イメージをプルします。 これは上記の Docker コンテナの IronPDF のセットアップ にあります。 Azure コンテナを作成します。 セットアップ Azure ポータルを使用してコンテナインスタンスを Azure にデプロイするためのクイックスタートガイドに従ってください。 - イメージソース: 他のレジストリ 推奨設定: イメージ: ironsoftwareofficial/ironpdfengine:2024.1.20(Docker Hub から) OS タイプ: Linux サイズ: 最小で 1 vCPU と 2 GiB のメモリ、またはそれ以上 サイズ: 最低1 vCPUおよび2 GiBのメモリ、またはそれ以上 お楽しみください! IronPdfEngine Docker が Azure コンテナインスタンスで実行されています! ## AWS ECR パブリックギャラリーでの IronPdfEngine を取得する ご注意Horizontal scaling is not supported. 詳しくはIronPdfEngineの制限を参照してください。 前提条件 Prerequisite Docker をインストールする必要があります。 セットアップ https://gallery.ecr.aws/v1m9w8y1/ironpdfengineにアクセスします。 Pull the v1m9w8y1/ironpdfengine image docker pull https://gallery.ecr.aws/v1m9w8y1/ironpdfengine docker pull https://gallery.ecr.aws/v1m9w8y1/ironpdfengine SHELL または特定のバージョン(推奨)をプルします。 docker pull https://gallery.ecr.aws/v1m9w8y1/ironpdfengine:2023.12.6 docker pull https://gallery.ecr.aws/v1m9w8y1/ironpdfengine:2023.12.6 SHELL Run ironpdfengine container. このコマンドは、コンテナを作成し、ポート 33350 でバックグラウンドで実行します。 docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine SHELL マーケットプレイスから IronPdfEngine を取得 迅速に開始するのを支援するために、IronPdfEngine を Azure と AWS の両方のマーケットプレイスに設定しました。 Azure マーケットプレイス Azure Marketplace セットアップ AzureマーケットプレイスのIronPDF Dockerコンテナにアクセスします。 "すぐに取得"と"続行"をクリックします。 "基本情報"、"クラスターの詳細"、および"アプリケーションの詳細"を完成させてKubernetesサービスを作成します。 デプロイが完了したら、左のサイドバーに移動してKubernetesリソース > コマンドを実行を選択します。 次のコマンドを実行します: kubectl get services kubectl get services SHELL 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"); $vbLabelText $csharpLabel AWSマーケットプレイス 前提条件 Docker をインストールする必要があります。 AWS CLIをインストールし、ログインしている必要があります。 セットアップ Go to IronPdfEngine on AWS marketplace. 'サブスクライブに進む'をクリックします。 利用規約に同意します。 設定に進みます。 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 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 SHELL ironpdfengineコンテナを実行します。 このコマンドは、コンテナを作成し、ポート33350でバックグラウンドで実行します。 docker run -d -p 33350:33350 000000000000.dkr.ecr.us-east-1.amazonaws.com/iron-software/ironpdfengine:2024.1.15 docker run -d -p 33350:33350 000000000000.dkr.ecr.us-east-1.amazonaws.com/iron-software/ironpdfengine:2024.1.15 SHELL IronPdfEngineのヘルスチェック Dockerコンテナのヘルスをチェックすることは、本番環境での信頼性と可用性を保証するために重要です。 IronPdfEngineのDockerコンテナをチェックする機能は、開発者がサービスが失敗した場合に再起動し、需要が増加した場合にリソースをスケールすることができるようにすることと、継続的なアプリケーションを監視することを可能にします。 IronPdfEngineのヘルスをチェックするには、同じIronPdfEngineポート(デフォルトでは33350)にgRPCリクエストを送信して、応答が得られるかを確認します。 gRPCによるヘルスチェック IronPdfEngineは、次のプロトコル構造を利用して、標準のgRPCヘルスチェックパターンに準拠しています。 message HealthCheckRequest { string service = 1; // Name of the service to check (e.g., "IronPdfEngine") } IronPdfEngine をチェックしているので、サービス名を IronPdfEngine に置き換えます。 デフォルトの33350を使用して、PostmanでローカルIronPdfEngineサービスにgRPCリクエストを送信するJavaScriptの例を以下に示します。 応答からわかるように、ステータス応答は SERVING であり、サービスが稼働していることを示しています。 コンテナが正常でない場合、ステータス応答は NOT_SERVING になります。 Kubernetesセットアップによるヘルスチェック Kubernetesセットアップの場合、サービスが健康かどうかを確認するために次のコマンドを使用できます。 livenessProbe: exec: command: - /bin/grpc_health_probe - -addr=:33350 - -rpc-timeout=5s livenessProbe: exec: command: - /bin/grpc_health_probe - -addr=:33350 - -rpc-timeout=5s YAML よくある質問 Dockerを使用してC#でHTMLをPDFに変換するにはどうすればよいですか? IronPDF の Docker セットアップを使用して、C# で HTML を PDF に変換できます。 Docker コンテナに IronPdfEngine をデプロイし、RenderHtmlAsPdf などのメソッドを使用して、この変換を実現します。 DockerでIronPDFEngineを使用する利点は何ですか? DockerでIronPDFEngineを使用すると、事前インストール済みで信頼性のある環境が提供され、依存関係の問題が軽減され、ChromeやPdfiumバイナリなどの必要なコンポーネントがすべて利用可能であることを保証します。 Docker Composeを使用してIronPDFEngineをセットアップするにはどうすればよいですか? docker-compose.ymlファイルを作成し、サービスとネットワークを定義します。depends_onディレクティブを使用して、IronPdfEngineがアプリケーションよりも先に起動することを確認します。 AWS ECSにIronPDFEngineをデプロイするために必要な手順は何ですか? AWS ECS にデプロイするには、ECS クラスターを作成し、タスク定義を定義し、リソース割り当てに AWS Fargate を使用します。その後、タスクまたはサービスを実行して IronPDFEngine を起動します。 AWS ECR Public GalleryからIronPDFEngineをプルするにはどうすればよいですか? AWS ECR Public Gallery にアクセスし、IronPDFEngine イメージを見つけ、提供されているコマンドに従ってコンテナをプルして実行します。 Azure MarketplaceからIronPDFEngineを利用することは可能ですか? はい、IronPDFEngineはAzure Marketplaceで利用可能です。マーケットプレイスページのセットアップ手順に従って、Dockerコンテナをデプロイできます。 IronPDFEngineを使用する際に注意すべき制限はありますか? IronPDFEngineは水平スケーリングをサポートしていません。この制限を考慮してデプロイメントを計画し、アプリケーションのニーズに応えることが重要です。 Dockerを使用して効率的にPDF生成と操作タスクを処理するにはどうすればよいですか? IronPDFEngineをDockerコンテナにデプロイして、PDF生成と操作タスクを効率的に管理し、Dockerの機能を活用して依存関係を処理し、一貫した環境を確保します。 Azure Container InstancesにIronPDFEngineをデプロイするための要件は何ですか? Azure Container Instances にデプロイするには、Azure アカウントを持っていることを確認し、デプロイ用に IronPDFEngine Docker イメージをプルします。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 準備はできましたか? Nuget ダウンロード 17,803,474 | バージョン: 2026.3 リリース 無料トライアル NuGet 無料版 総ダウンロード数: 17,803,474 ライセンスを見る まだスクロールしていますか? すぐに証拠が欲しいですか? PM > Install-Package IronPdf サンプルを実行するHTML が PDF に変換されるのを確認します。 NuGet 無料版 総ダウンロード数: 17,803,474 ライセンスを見る