LinuxでIronPDFを使用

2018年8月28日
更新済み 2025年2月18日
共有:
This article was translated from English: Does it need improvement?
Translated
View the article in English

互換性とセットアップガイド

IronPDFは、Linuxで.NET 9, 8, 7, 6, 5および.NET Coreアプリケーションをサポートしており、Docker、Azure、AWS、macOS、そして(もちろん)Windowsでも使用できます。

公式にサポートされているコンテナ化とホスティング

Linux V1 related to 公式にサポートされているコンテナ化とホスティング Docker related to 公式にサポートされているコンテナ化とホスティング Azure 1 related to 公式にサポートされているコンテナ化とホスティング Amazon Web Services related to 公式にサポートされているコンテナ化とホスティング

正式にサポートされているLinuxのディストリビューション

Ubuntu V1 related to 正式にサポートされているLinuxのディストリビューション Debian V1 related to 正式にサポートされているLinuxのディストリビューション Centos V1 related to 正式にサポートされているLinuxのディストリビューション

LinuxでのIronPDFのためのヒント

Linux上での使用において、長期サポートが保証されており、一般的に十分にテストされているため、.NET Core 3.1 およびその他MicrosoftによってLTSとしてマークされたランタイムの使用をお勧めします。

IronPDFの実行にはLinux上でコードの変更は必要ありません。 一般的に、IronPDF は、エンジニアによる数百時間のテストと構成のおかげで、すぐに使用可能です。

Linuxのサポートは、Azure Web Apps、Azure Functions、AWS EC2、AWS Lambda、Azure Devops Dockerなどの多くのクラウドサービスがLinuxに大きく依存しているため、重要です。 Iron Softwareでは、これらのクラウドツールを定期的に使用しており、多くの企業およびSAASのお客様も同様であることを理解しています。

Linux特定のパッケージ

NuGet

  • IronPdf.Linux

    DLLダウンロード

    オフラインで使用する場合、DLL をダウンロードしてプロジェクトに参照を追加できます。

  • IronPdf.Linux.zip

ハードウェア仕様

IronPDFはChromiumを使用してHTMLをPDFにレンダリングします。 Chromiumエンジンは、PDFをChromeの印刷機能とピクセル単位で完璧にレンダリングします。 ハードウェア仕様は主にChromiumエンジンを実行するためのものであり、これがほとんどの計算能力を消費します。

  • 最小限 : 1コア&1.75GBのRAM
  • 推奨スペック:2コア & 8GB以上のRAM

サポートされている公式Linuxディストリビューション

私たちは、IronPDFの「ゼロ構成」セットアップのために、以下の最新の64ビット Linux OSを公式にサポートし、推奨しています。

  • ウブントゥ 22
  • Ubuntu 20
  • ウブントゥ 18
  • ウブントゥ 16
  • Debian 11 _ [現在のMicrosoft AzureデフォルトLinuxディストリビューション]
  • デビアン 10

    • CentOS 8

(Note: In this context, specific software or version names like CentOS 8 typically remain unchanged in translation).

  • フェドラ・リナックス 33
  • Amazon AWS Linux 2 IronPDF用AWS Lambda設定ガイドを読む

    Linuxディストリビューションに関する「その他のLinuxディストロ」をお読みいただき、公式にサポートされていないバージョンのLinuxにおけるIronPDFのインストール方法のアドバイスを得てください。

    私たちは Microsoft の公式Dockerイメージの使用をお勧めします。 他のLinuxディストリビューションも一部はサポートされていますが、apt-getを使用する手動構成が必要な場合があります。 このドキュメントの最後にある「Linux の一般的な依存パターン」を参照してください。

Linux 自動セットアップ

デフォルト設定 LinuxAndDockerDependenciesAutoConfig true は、IronPDFをLinux上で実行するために必要なすべての依存関係を自動的にインストールしようとします。 最初のHTMLからPDFへの変換操作は通常よりも時間がかかる場合があります。

IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = True
$vbLabelText   $csharpLabel

Linux最適化NuGetパッケージ

Install-Package IronPdf.Linux

Linux向けに最適化されたIronPDFのデプロイメントのためのNuGetパッケージは、私たちのIronPDF高度なNuGetインストールガイドで文書化されています。

この Linux 最適化パッケージを利用して、Windows または macOS マシン上で開発することができます。

または、直接Linux用のDLLをダウンロードできます。

Docker + Linux セットアップ

Docker で IronPDF を使用する際のセットアップにお困りの場合は、Docker で IronPDF を使用するための詳細なドキュメントをご覧ください。

Ubuntu互換性

Ubuntuは、当社で最もテストされたLinuxオペレーティングシステムです。 これは、我々が継続的なテストとデプロイに使用しているAzureインフラストラクチャで頻繁に使用されているためです。 このプラットフォームには、公式のMicrosoft .NETサポートと公式のDockerイメージもあります。

Ubuntu 20

Microsoft related to Ubuntu 20 Ubuntu V1 related to Ubuntu 20 Chrome V1 related to Ubuntu 20 Safari V1 related to Ubuntu 20 Docker related to Ubuntu 20 Azure 1 related to Ubuntu 20

私たちは、_ゼロ構成_でUbuntu 20をサポートしています。

  • ChromeおよびWebKitベースのHTMLからPDFへのレンダリングエンジンをサポート
  • 公式に.NET Core 3.1、5、6 (LTS)、7、および8のランタイムをサポート
  • 非公式ながら、Ubuntu 20上の他の多くの.NET Coreランタイムもサポートしています。
  • このプラットフォームでは、各リリース前に997以上のユニットテストを実行します。

    公式マイクロソフトDockerイメージ:

  • 64ビットUbuntu 20.04 Dockerイメージ for .NET Runtime 3.1 ('3.1-focal')
  • 64ビットUbuntu 20.04 Dockerイメージ for .NET Runtime 5.0 ('5.0-focal')

    手動でのUbuntu 20セットアップ

    手動でインストールしたい場合や、アプリが_sudo_管理者権限で実行できない場合。

    IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;

apt update
apt install -y libc6-dev
apt install -y libgtk2.0-0
apt install -y libnss3
apt install -y libatk-bridge2.0-0
apt install -y libx11-xcb1
apt install -y libxcb-dri3-0
apt install -y libdrm-common
apt install -y libgbm1
apt install -y libasound2
apt install -y libappindicator3-1
apt install -y libxrender1
apt install -y libfontconfig1
apt install -y libxshmfence1
apt install -y libgdiplus
apt install -y libva-dev

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)
  • 以下に記載のIronCefSubprocessは、アプリケーションのbinフォルダ内にあるバイナリです。 正確なパスを指定する必要があるかもしれません。それはbinruntimesサブディレクトリにある可能性があります。
  • 管理者権限が必要な場合があります。

ウブントゥ 18

Microsoft related to ウブントゥ 18 Ubuntu V1 related to ウブントゥ 18 Chrome V1 related to ウブントゥ 18 Safari V1 related to ウブントゥ 18 Docker related to ウブントゥ 18 Azure 1 related to ウブントゥ 18

Ubuntu 18をゼロ構成でサポートしています。

  • ChromeおよびWebKitベースのHTMLからPDFへのレンダリングエンジンをサポート
  • 公式サポート .NET Core 3.1 LTS および .NET 5 ランタイム
  • 非公式には、Ubuntu 18や16上の他の多くの.NET Coreランタイムもサポートしています。
  • リリースの前に、このプラットフォームで包括的なスモークテストを実施します。

    公式マイクロソフトDockerイメージ:

  • 64ビットUbuntu 18.04用Dockerイメージ - .NET Runtime 3.1('3.1-bionic')
  • 公式の .NET 5 用 Ubuntu 18 の Docker イメージは存在しませんが、互換性は非常に高いです。

    手動Ubuntu 18セットアップ

    手動でインストールしたい場合や、アプリが_sudo_管理者権限で実行できない場合。

    IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;

apt update
apt install -y libc6
apt install -y libc6-dev
apt install -y libgtk2.0-0
apt install -y libnss3
apt install -y libatk-bridge2.0-0
apt install -y libx11-xcb1
apt install -y libxcb-dri3-0
apt install -y libdrm-common
apt install -y libgbm1
apt install -y libasound2
apt install -y libappindicator3-1
apt install -y libxrender1
apt install -y libfontconfig1
apt install -y libxshmfence-dev

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)

ウブントゥ 16

Ubuntu V1 related to ウブントゥ 16 Test related to ウブントゥ 16

Ubuntu 16には限られた/非公式のサポートしかありません。Ubuntu 16はIronPDFで厳密にテストされていません。

Ubuntu 16上の.NETはMicrosoftによって公式にサポートされており、多くのユーザーによってIronPDFでも動作することが報告されています。 開発者は手動でapt-get依存関係をインストールする必要があるかもしれません。

  • ChromeWebKitは通常、手動設定で動作します。
  • .NET Core 3.1 LTS および .NET 5 ランタイム は Ubuntu 16 に対するマイクロソフトのサポートがあります。
  • 現在、Ubuntu 16用の公式なMicrosoft Dockerイメージはありません。

    手動Ubuntu 16セットアップ

    手動でインストールしたい場合や、アプリが_sudo_管理者権限で実行できない場合。

    IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;

apt update
apt install -y libc6-dev
apt install -y libgtk2.0-0
apt install -y libnss3
apt install -y libatk-bridge2.0-0
apt install -y libx11-xcb1
apt install -y libxcb-dri3-0
apt install -y libdrm-common
apt install -y libgbm1
apt install -y libasound2
apt install -y libappindicator3-1
apt install -y libxrender1
apt install -y libfontconfig1
apt install -y libxshmfence-dev

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)

Debian互換性

Debianは、私たちがテストする2番目に多いLinuxオペレーティングシステムです。 このプラットフォームには公式のMicrosoft .NETサポートと公式のDockerイメージもあります。

デビアン11

Debian related to デビアン11 Microsoft related to デビアン11 Chrome V1 related to デビアン11 Safari V1 related to デビアン11 Docker related to デビアン11 Azure 1 related to デビアン11

Debian 11は、Visual Studioで.NETプロジェクトにDockerサポートを追加する際にMicrosoftが使用するデフォルトのLinuxディストリビューションです。

デフォルトの設定で ゼロコンフィギュレーション で Debian 11 をサポートします。

  • ChromeおよびWebKitベースのHTMLからPDFへのレンダリングエンジンをサポート
  • 公式に.NET Core 3.1、5、6 (LTS)、7、および8のランタイムをサポート
  • 非公式には、Debian 11の多くの他の.NET Coreランタイムをサポートしています。
  • このプラットフォームでは、各リリース前に997以上のユニットテストを実行します。

    公式マイクロソフトDockerイメージ:

  • 64ビット Debian 11 Docker イメージ (.NET ランタイム 3.1 用)
  • 64ビット Debian 11 Docker イメージ for .NET Runtime 5.0

    手動Debian 11セットアップ

    手動でインストールしたい場合や、アプリが_sudo_管理者権限で実行できない場合。

    IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;

apt update
apt install -y libc6-dev
apt install -y libgtk2.0-0
apt install -y libnss3
apt install -y libatk-bridge2.0-0
apt install -y libx11-xcb1
apt install -y libxcb-dri3-0
apt install -y libdrm-common
apt install -y libgbm1
apt install -y libasound2
apt install -y libxkbcommon-x11-0
apt install -y libxrender1
apt install -y libfontconfig1
apt install -y libxshmfence1

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)

デビアン 10

Debian related to デビアン 10 Microsoft related to デビアン 10 Chrome V1 related to デビアン 10 Safari V1 related to デビアン 10 Docker related to デビアン 10 Azure 1 related to デビアン 10

Debian 10に対して出荷時の状態で_設定不要_で対応しています。

  • ChromeおよびWebKitベースのHTMLからPDFへのレンダリングエンジンをサポート
  • 公式に.NET Core 3.1、5、6 (LTS)、7、および8のランタイムをサポート
  • 非公式には、Debian 10上の他の多くの.NET Coreランタイムもサポートしています。
  • このプラットフォームでは、各リリース前に997以上のユニットテストを実行します。

    公式マイクロソフトDockerイメージ:

  • 64ビット Debian 10 Dockerイメージ .NET Runtime 3.1用
  • 64ビットDebian 10 Dockerイメージ for .NET Runtime 5.0

    手動 Debian 10 セットアップ

    手動でインストールしたい場合や、アプリが_sudo_管理者権限で実行できない場合。

    IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;

apt update
apt install -y libc6-dev
apt install -y libgtk2.0-0
apt install -y libnss3
apt install -y libatk-bridge2.0-0
apt install -y libx11-xcb1
apt install -y libxcb-dri3-0
apt install -y libdrm-common
apt install -y libgbm1
apt install -y libasound2
apt install -y libappindicator3-1
apt install -y libxrender1
apt install -y libfontconfig1
apt install -y libxshmfence1

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)

Debian 9 およびそれ以前

Debian related to Debian 9 およびそれ以前 Test related to Debian 9 およびそれ以前

Debian 9は公式にテストされておらず、IronPDFではすぐに動作しません。 ただし、Debian 9 上の .NET は Microsoft によって公式にサポートされており、正しくセットアップすれば IronPDF と連携して動作することができます。

(このドキュメントの最後にある「Linuxの一般的な依存パターン」を参照)。

Debian 9 用の .NET Core 3.1 または .NET 5.0 に対して、Microsoft による公式の Docker イメージは存在しません。Debian 10 への移行を強くお勧めします。

CentOS互換性

Centos related to CentOS互換性 Chrome V1 related to CentOS互換性 Safari V1 related to CentOS互換性 Test related to CentOS互換性

私たちはCentOSを積極的に支持し、サポートしています。

CentOS 8サポート

_ゼロ構成_で箱から出してすぐにCentOS 8をサポートします。

  • ChromeおよびWebKitベースのHTMLからPDFへのレンダリングエンジンをサポート
  • 公式に.NET Core 3.1、5、6 (LTS)、7、および8のランタイムをサポート
  • 非公式には、CentOS上の他の多くの.NET Coreランタイムもサポートしています。
  • リリースの前に、このプラットフォームで包括的なスモークテストを実施します。

    残念ながら、CentOS 8用の.NET Core 3.1や.NET 5.0の公式DockerイメージはMicrosoftから提供されていません。

    手動CentOS 8セットアップ

    手動でインストールしたい場合や、アプリが_sudo_管理者権限で実行できない場合。

    IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;

dnf -y update
dnf -y install glibc-devel
dnf -y install nss
dnf -y install at-spi2-atk
dnf -y install libXcomposite
dnf -y install libXrandr
dnf -y install mesa-libgbm
dnf -y install alsa-lib
dnf -y install pango
dnf -y install cups-libs
dnf -y install libXdamage
dnf -y install libxshmfence

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)

CentOS 7 以下

CentOS 7はテストされておらず、IronPDFではそのままでは動作しません。

しかし、CentOS 7 上の .NET は Microsoft から公式にサポートされており、正しく設定されていれば IronPdf と連携する可能性があります(以下の「Linux の一般的な依存パターン」をお読みください)。

.NET Core 3.1 や .NET 5.0 用の CentOS 7 に対応した Microsoft の公式 Docker イメージはありません。

Amazon AWS Linux 2 互換性

Amazon Web Services related to Amazon AWS Linux 2 互換性 Chrome V1 related to Amazon AWS Linux 2 互換性 Safari V1 related to Amazon AWS Linux 2 互換性 Test related to Amazon AWS Linux 2 互換性

私たちは、Amazonのクラウドサービス(EC2やLambdaなど)の基盤を形成するAmazon AWS Linux 2に対応しています。

  • Amazon AWS Linux 2上にMicrosoftによる.NET Core 3.1または.NET 5.0の公式Dockerイメージはありません。
  • IronPDFを開発する際に、Amazon AWS Linux 2との互換性を手動でテストします。

    弊社は、IronPDF AWS Lambdaガイドをお読みになることをお勧めします。これは、AWS LambdaでのIronPdf用の動作するDockerファイルを含んでいます。

    Amazon Linux 2 手動セットアップ

    手動でインストールしたい場合や、アプリが_sudo_管理者権限で実行できない場合。

    IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;

yum update -y
yum install -y pango.x86_64
yum install -y libXcomposite.x86_64
yum install -y libXcursor.x86_64
yum install -y libXdamage.x86_64
yum install -y libXext.x86_64
yum install -y libXi.x86_64
yum install -y libXtst.x86_64
yum install -y cups-libs.x86_64
yum install -y libXScrnSaver.x86_64
yum install -y libXrandr.x86_64
yum install -y GConf2.x86_64
yum install -y alsa-lib.x86_64
yum install -y atk.x86_64
yum install -y gtk3.x86_64
yum install -y ipa-gothic-fonts
yum install -y xorg-x11-fonts-100dpi
yum install -y xorg-x11-fonts-75dpi
yum install -y xorg-x11-utils
yum install -y xorg-x11-fonts-cyrillic
yum install -y xorg-x11-fonts-Type1
yum install -y xorg-x11-fonts-misc
yum install -y glibc-devel.x86_64
yum install -y at-spi2-atk.x86_64
yum install -y mesa-libgbm.x86_64
yum install -y libxkbcommon

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)

Amazonクラウドプラットフォームでのインストールとロギングを含む公式サポートのIronPdf for AWS Lambdaに関するドキュメントもお読みください。

Fedora Linux互換性

Fedora Linux はサポートされています。

Fedora Linux 33をゼロ構成でサポートします。

  • ChromeおよびWebKitベースのHTMLからPDFへのレンダリングエンジンをサポート
  • 公式に.NET Core 3.1、5、6 (LTS)、7、および8のランタイムをサポート
  • リリースの前に、このプラットフォームで包括的なスモークテストを実施します。

    手動Fedora Linuxセットアップ

    手動でインストールしたい場合や、アプリが_sudo_管理者権限で実行できない場合。

    これは、古いバージョンや新しいバージョンのFedora Linuxにも役立つ可能性があります。

    IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;

dnf -y install glibc-devel
dnf -y install nss
dnf -y install at-spi2-atk
dnf -y install libXcomposite
dnf -y install libXrandr
dnf -y install mesa-libgbm
dnf -y install alsa-lib
dnf -y install pango
dnf -y install cups-libs
dnf -y install libXdamage
dnf -y install libxshmfence

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)

Alpine Linuxの互換性

Alpine LinuxでIronPDFを実行することはサポートされていません。 できればそうしたいのですが、できません。 率直に言って、私たちはAlpineが好きで、このプロジェクトが存続し、成長し続けることを願っています。 2023年現在、Alpineは依然として時代遅れの「musl」C言語ライブラリを使用しており、これによりChromium開発者はこのOSを完全にサポートすることができていません。

.NET 6でIronPdfEngineを使用するためのAlpine Docker

IronPdfは、すべてのIronPdf機能を含むコンテナイメージを提供します。 これは、Alpine上で実行されているプロジェクトがIronPdfEngineコンテナに接続することでIronPDFの機能にアクセスできるようにします。

ステップ1: IronPdf エンジンドッカーイメージをプルして実行します

以下のコマンドをターミナルで実行して、IronPdfエンジンドッカーイメージをプルして実行してください:

docker pull ironsoftwareofficial/ironpdfengine
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine

ステップ2: コンソールアプリの設定

新しいコンソールアプリケーションを.NET 6をターゲットにして作成してください。

NuGetパッケージマネージャーを使用して、IronPdf.Slim NuGetパッケージをインストールします。

他のLinuxディストリビューション

Linux用のIronPDFの必要条件を手動でインストールすることもできます apt-gethfs、およびyumを使用して。

これにより、サポートされていない多くのLinuxディストリビューションでIronPDFを使用することができます。

インストールの初回時には、IronPDFは必要なシステム依存関係について通知するために例外をスローすることがあります。

  • 以下に記載のIronCefSubprocessは、アプリケーションのbinフォルダ内にあるバイナリです。 正確なパスを指定する必要があるかもしれません。それはbinruntimesサブディレクトリにある可能性があります。
  • 管理者権限が必要な場合があります。

    リストにないLinux OSでの手順に不明点がある場合; そのOSでChromiumブラウザの依存関係を調査する。

    別のLinuxディストリビューションの公式サポートを求める方は、support@ironsoftware.com にご連絡ください。

    Linux の一般的な依存関係パターン

    他のLinux OSの依存パッケージも上記で確認してください。

apt update
apt install -y libc6-dev
apt install -y libgtk2.0-0
apt install -y libnss3
apt install -y libatk-bridge2.0-0
apt install -y libx11-xcb1
apt install -y libxcb-dri3-0
apt install -y libdrm-common
apt install -y libgbm1
apt install -y libasound2
apt install -y libappindicator3-1
apt install -y libxrender1
apt install -y libfontconfig1
apt install -y libxshmfence1

chmod 755 IronCefSubprocess
# (IronCefSubprocess is normally found at bin/runtimes/linux-x64/)

IronCefSubprocess(アイアンセフサブプロセス)

IronCefSubprocess は、アプリケーションの bin フォルダー内にあるバイナリファイルです。 それは .NET プロセスによって実行可能である必要があります。

例(パスは異なる場合があります)

chmod 755 bin/runtimes/linux-64/IronCefSubprocess

Linux での .NET 単一ファイル公開

Linuxでプロジェクトを単一ファイルとして公開することを選択した場合、以下のように行います。

dotnet publish -r linux-x64 /property:PublishProfile=FolderProfile /bl

一時ファイルパス

開発者は、特定の使用例に対して一時ファイルを作成できる書き込み可能なディレクトリを指定する必要がある場合があります。

Linuxでは、このパスの一般的で安全な値は/tmp/ですが、最終的にはユーザーがファイルの読み書きができるパスである必要があります。

//set IronPDF Temp Path
string tmpPath =  @"/tmp/";

IronPdf.Logging.Logger.LogFilePath = tmpPath;
Environment.SetEnvironmentVariable("TEMP", tmpPath, EnvironmentVariableTarget.Process);
Environment.SetEnvironmentVariable("TMP", tmpPath, EnvironmentVariableTarget.Process);
IronPdf.Installation.TempFolderPath = tmpPath;
IronPdf.Installation.CustomDeploymentDirectory = tmpPath;
//set IronPDF Temp Path
string tmpPath =  @"/tmp/";

IronPdf.Logging.Logger.LogFilePath = tmpPath;
Environment.SetEnvironmentVariable("TEMP", tmpPath, EnvironmentVariableTarget.Process);
Environment.SetEnvironmentVariable("TMP", tmpPath, EnvironmentVariableTarget.Process);
IronPdf.Installation.TempFolderPath = tmpPath;
IronPdf.Installation.CustomDeploymentDirectory = tmpPath;
'set IronPDF Temp Path
Dim tmpPath As String = "/tmp/"

IronPdf.Logging.Logger.LogFilePath = tmpPath
Environment.SetEnvironmentVariable("TEMP", tmpPath, EnvironmentVariableTarget.Process)
Environment.SetEnvironmentVariable("TMP", tmpPath, EnvironmentVariableTarget.Process)
IronPdf.Installation.TempFolderPath = tmpPath
IronPdf.Installation.CustomDeploymentDirectory = tmpPath
$vbLabelText   $csharpLabel