IronPDF 始める IronPDF for Java Azure Functions Java用IronPDFをAzureファンクションで実行する方法 カーティス・チャウ 更新日:2026年1月25日 IronPDF をダウンロード Mavenダウンロード JARダウンロード 無料トライアル 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 IronPDF for JavaはDockerデプロイメントにのみ対応しています。 IronPDFは実行時にバイナリを実行する必要があるため、Zip展開には対応していません。 1.Microsoft Official Guide for Creating Function on Linux Using Custom Image に従ってください。 Choose a programming language の場合は、Java を選択してください。 アプリが稼働するまで、ガイドに従ってください。 2.IronPDF依存関係を追加する 最新の <version> を使用して、これを pom に追加します。 <dependencies> <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>2022.xx.x</version> </dependency> <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf-engine-linux-x64</artifactId> <version>2022.xx.x</version> </dependency> </dependencies> <dependencies> <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>2022.xx.x</version> </dependency> <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf-engine-linux-x64</artifactId> <version>2022.xx.x</version> </dependency> </dependencies> XML 注意: Docker でIronPDF を実行するには、ironpdf-engine-linux-x64 が必要です。 RenderPdf 関数を追加する Function.java に新しい関数を追加します この関数はURLを受け取り、レンダリングされたPDFを返します。 import com.microsoft.azure.functions.*; import com.ironsoftware.ironpdf.PdfDocument; import java.util.Optional; public class Function { /** * Azure function to render a URL as a PDF and return it. * Triggered by an HTTP request with a URL query string parameter. */ @FunctionName("RenderPdf") public HttpResponseMessage renderPdf( @HttpTrigger( name = "req", methods = {HttpMethod.GET, HttpMethod.POST}, authLevel = AuthorizationLevel.ANONYMOUS) HttpRequestMessage<Optional<String>> request, final ExecutionContext context) { context.getLogger().info("Java HTTP trigger processed a request. (RenderPdf)"); // Parse query parameter for the URL final String url = request.getQueryParameters().get("url"); // Check if the URL parameter is provided if (url == null) { return request.createResponseBuilder(HttpStatus.BAD_REQUEST) .body("Please pass a url on the query string") .build(); } else { try { context.getLogger().info("IronPDF is attempting to render the URL: " + url); // Render the given URL as a PDF PdfDocument pdfDocument = PdfDocument.renderUrlAsPdf(url); // Convert the PDF document to binary data byte[] content = pdfDocument.getBinaryData(); // Return the PDF as an attachment in the response return request.createResponseBuilder(HttpStatus.OK) .body(content) .header("Content-Disposition", "attachment; filename=ironpdf_result.pdf") .build(); } catch (Exception e) { context.getLogger().severe("Failed to render PDF: " + e.getMessage()); return request.createResponseBuilder(HttpStatus.INTERNAL_SERVER_ERROR) .body("An error occurred while rendering the PDF.") .build(); } } } } import com.microsoft.azure.functions.*; import com.ironsoftware.ironpdf.PdfDocument; import java.util.Optional; public class Function { /** * Azure function to render a URL as a PDF and return it. * Triggered by an HTTP request with a URL query string parameter. */ @FunctionName("RenderPdf") public HttpResponseMessage renderPdf( @HttpTrigger( name = "req", methods = {HttpMethod.GET, HttpMethod.POST}, authLevel = AuthorizationLevel.ANONYMOUS) HttpRequestMessage<Optional<String>> request, final ExecutionContext context) { context.getLogger().info("Java HTTP trigger processed a request. (RenderPdf)"); // Parse query parameter for the URL final String url = request.getQueryParameters().get("url"); // Check if the URL parameter is provided if (url == null) { return request.createResponseBuilder(HttpStatus.BAD_REQUEST) .body("Please pass a url on the query string") .build(); } else { try { context.getLogger().info("IronPDF is attempting to render the URL: " + url); // Render the given URL as a PDF PdfDocument pdfDocument = PdfDocument.renderUrlAsPdf(url); // Convert the PDF document to binary data byte[] content = pdfDocument.getBinaryData(); // Return the PDF as an attachment in the response return request.createResponseBuilder(HttpStatus.OK) .body(content) .header("Content-Disposition", "attachment; filename=ironpdf_result.pdf") .build(); } catch (Exception e) { context.getLogger().severe("Failed to render PDF: " + e.getMessage()); return request.createResponseBuilder(HttpStatus.INTERNAL_SERVER_ERROR) .body("An error occurred while rendering the PDF.") .build(); } } } } JAVA 4.Dockerfileの更新 IronPdf.Linux 必須パッケージを追加してください。 この例では、ベース Docker イメージは mcr.microsoft.com/azure-functions/java:4-java$JAVA_VERSION-build であり、これは Debian 11 に基づいています。 So we need to add these packages to the Dockerfile. RUN apt update \ && apt install -y libgdiplus 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 RUN apt-get install -y xvfb libva-dev libgdiplus 他のLinuxディストロについては、IronPdf Linuxインストールガイドを参照してください。 5.関数をAzureに再デプロイ ビルドとパッケージ化: mvn clean package Dockerイメージをビルドする: docker build --tag <DOCKER_ID>/azurefunctionsimage:v1.0.0 . Dockerイメージをプッシュする: docker push <DOCKER_ID>/azurefunctionsimage:v1.0.0 4.Azureの機能を更新してください: az functionapp create --name <APP_NAME> --storage-account <STORAGE_NAME> \ --resource-group AzureFunctionsContainers-rg --plan myPremiumPlan \ --deployment-container-image-name <DOCKER_ID>/azurefunctionsimage:v1.0.0 az functionapp create --name <APP_NAME> --storage-account <STORAGE_NAME> \ --resource-group AzureFunctionsContainers-rg --plan myPremiumPlan \ --deployment-container-image-name <DOCKER_ID>/azurefunctionsimage:v1.0.0 SHELL IronPDFをお楽しみください トリガー機能: https://<APP_NAME>.azurewebsites.net/api/RenderPdf?url=https://www.google.com 注意: 関数が最初に起動したときは、動作が遅くなったり、初期化で失敗したりすることがありますが、その後は安定して動作するはずです。 よくある質問 Azure Functionsを使用してJavaでPDFジェネレーターを作成する方法は? Dockerを通じてIronPDFをデプロイすることで、Javaを使用してAzure FunctionsでPDFジェネレーターを作成できます。これはAzure Function環境内でPDF生成タスクを処理するためにIronPDFライブラリを使用することを含みます。 Azure FunctionsのIronPDFにはなぜDockerデプロイメントが必要ですか? Azure FunctionsのIronPDFにはDockerデプロイメントが必要です。なぜなら、実行時にバイナリを実行する必要があり、Zipデプロイメント方法ではサポートされていないためです。 MavenプロジェクトにIronPDF依存関係を追加する手順は? MavenプロジェクトにIronPDFの依存関係を追加するには、`pom.xml`ファイルにIronPDFおよび`ironpdf-engine-linux-x64`ライブラリを含めます。互換性のために最新のバージョン番号を使用していることを確認してください。 Azure FunctionのRenderPdf関数はどのように機能しますか? Azure FunctionのRenderPdf関数は、HTTPリクエストからURLを読み取り、IronPDFの`PdfDocument.renderUrlAsPdf`メソッドを使用してURLをPDFとしてレンダリングし、PDFをレスポンスの添付ファイルとして返します。 IronPDFのDockerfileに必要なLinuxパッケージは何ですか? IronPDFのDockerfileには、`libgdiplus`、`libxkbcommon-x11-0`、`libc6`、および`libgtk2.0-0`などのLinuxパッケージを含める必要があり、Debianベースのイメージ内での適切な機能を保証します。 PDF生成関数を初めてトリガーするときに何が期待されますか? PDF生成関数を初めてトリガーすると、初期化プロセスのために遅くなったり失敗したりすることがあります。以後の実行はより一貫してパフォーマンスが発揮されるはずです。 Azure FunctionのDockerイメージをどのようにデプロイできますか? Azure FunctionのDockerイメージをデプロイするには、`mvn clean package`でプロジェクトをビルドし、Dockerイメージを作成してDockerレジストリにプッシュし、この新しいイメージを使用するようにAzure Functionを更新します。 AzureでPDF生成関数をトリガーする正しいURL形式は何ですか? PDF生成関数をトリガーするには、URL形式:`https://.azurewebsites.net/api/RenderPdf?url=`を使用します。 カスタムDockerイメージを使用してAzure Functionをセットアップするためのリソースはどこにありますか? カスタムDockerイメージを使用してAzure Functionをセットアップするために、LinuxでのAzure Functionを作成するためのMicrosoft公式ガイドを参照できます。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 準備はできましたか? バージョン: 2026.3 リリース 無料トライアル 無料のMavenダウンロード ライセンスを見る まだスクロールしていますか? すぐに証拠が欲しいですか? サンプルを実行するHTML が PDF に変換されるのを確認します。 無料のMavenダウンロード ライセンスを見る