將 IronPDF 加入現有的 Docker 容器
IronPDF for .NET Standard 現在完全支持 Docker,包括用於 Linux 和 Windows 的 Azure Docker 容器。
您想將IronPDF部署為單獨的Docker容器嗎? 了解更多有關IronPDF Engine教程指南的信息。





為什麼在 Azure 上使用 Docker?
除了出色的企業可擴展性外,Azure上的Docker容器比普通的WebApps享有更多的權限。
這允許渲染SVG字體,因為系統可以使用GDI+圖形。
IronPDF 與 Linux 入門
如果您不熟悉 Docker 與 .NET,我們建議閱讀這篇優秀的文章:設置 Docker 調試並與 Visual Studio 專案整合。
我們也強烈建議您閱讀我們的IronPDF Linux 安裝和兼容性指南
推薦的 Linux Docker 發行版
我們推薦以下最新的 64 位元 Linux 操作系統,以便於配置 IronPDF。
- Ubuntu 22
- Ubuntu 20
- Ubuntu 18
- Debian 11
- Debian 10 [目前是 Microsoft Azure 的預設 Linux 發行版]
- CentOS 8
Amazon AWS Linux 2 閱讀 IronPDF AWS Lambda 設定指南
我們建議使用 Microsoft 的.NET 官方 Docker 映像。 其他 Linux 發行版部分支持,但可能需要使用 apt-get 手動配置。 請參閱我們的「Linux 手動設定」指南
此文件中包含適用於 Ubuntu 和 Debian 的工作 Docker 文件:
IronPDF Linux Docker 安裝基本要素
使用針對 Linux 優化的 NuGet 套件
我們建議使用IronPdf.Linux NuGet 套件,而不是一般的IronPdf 套件,以節省磁碟空間並避免在啟動 Docker 實例時下載資產。 不用擔心,無論是在Windows或macOS上開發,它仍然有效 - 它只是針對Linux優化。
:InstallCmd Install-Package IronPdf.Linux
:InstallCmd Install-Package IronPdf.Linux
另一個解決方案是在常規的IronPdf NuGet 套件上簡單地添加IronPdf.Native.Chrome.Linux。
:InstallCmd Install-Package IronPdf.Native.Chrome.Linux
:InstallCmd Install-Package IronPdf.Native.Chrome.Linux
避免自動安裝依賴性
許多用戶報告說,當 LinuxAndDockerDependenciesAutoConfig
設為 false 時,在 Linux 和 Docker 環境下的結果更好。 那是因為apt-get風格的包管理器已經在您的 Docker 文件中安裝了必要的前提條件。
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;
禁用 GPU 加速
Linux Docker 容器通常無法訪問 GPU。 GPU 加速預設為停用。 如果您已啟用ChromeGpuModes.Enabled,我們強烈建議您在 Docker 部署中禁用它:
IronPdf.Installation.ChromeGpuMode=IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.ChromeGpuMode=IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
"提前" 初始化
或者,您也可以調用IronPdf.Installation.Initialize()
方法來手動啟動IronPDF。 首次使用 IronPDF 的 Docker 實例可能需要一些時間來下載先決條件。 我們可以在創建實例時調用此代碼以避免這種情況:
IronPdf.Installation.Initialize();
IronPdf.Installation.Initialize();
Ubuntu Linux DockerFiles


Ubuntu 22 與 .NET 8
Ubuntu 22 搭配 .NET 7
Ubuntu 20 與 .NET 6
Ubuntu 20 搭配 .NET 5
Ubuntu 20 搭配 .NET 3.1 LTS
Ubuntu 18 與 .NET 3.1 LTS
Debian Linux DockerFiles


Debian 12 與 .NET 8
Debian 11 搭配 .NET 7
Debian 11 與 .NET 6
Debian 11 與 .NET 5
Debian 11 與 .NET 3.1 LTS
Debian 10 與 .NET 5
Debian 10 搭配 .NET 3.1 LTS
Alpine Linux Docker檔案
IronPDF 在 Alpine Linux 上不支持運行。 我們希望我們能夠,但我們不能。 坦白說,我們喜歡Alpine,並希望這個項目能持續發展壯大。 截至2023年,Alpine仍然使用過時的“musl”C語言庫,這導致Chromium開發者尚無法完全支持此操作系統。
在 .NET 6 中將 Alpine Docker 與 IronPdfEngine 搭配使用
IronPdf提供一個包含所有IronPdf功能的容器映像。 這使運行在 Alpine 上的項目能夠通過連接到 IronPdfEngine 容器訪問 IronPdf 功能。
步驟1:拉取並運行 IronPdf Engine Docker 映像
在終端機中執行以下命令以拉取並運行 IronPdf Engine Docker 映像:
docker pull ironsoftwareofficial/ironpdfengine
docker pull ironsoftwareofficial/ironpdfengine
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
步驟 2:設定控制台應用程序
建立一個針對 .NET 6 的新控制台應用程式。
使用 NuGet 包管理器安裝 IronPdf.Slim NuGet 包。
IronPDF Windows Docker 容器


Windows Docker 容器在 Azure 上變得越來越受歡迎,因為它們提供更高的性能和可擴展性,並且讓開發者有更多配置實例的權限。
由於可以更高級地訪問圖形庫和虛擬顯卡,IronPDF 在 Azure 上的 Docker 容器(Windows 或 Linux)中將實現更吸引人的文本渲染。
文章「Visual Studio Container Tools for Docker」是一個很棒的入門指南。
這是一個用於 .NET Core 3.1 的範例 Windows 容器 Dockerfile
Windows Server 2019 .NET 6.0
預先配置的 Windows 容器,其中包含運行 IronPdf 所需的所有必要依賴項。
請注意
FROM mcr.microsoft.com/dotnet/sdk:6.0-windowsservercore-ltsc2019 AS build
WORKDIR /src
COPY ["nuget.config", "."]
COPY ["ConsoleApp/ConsoleApp.csproj", "ConsoleApp/"]
RUN dotnet restore "ConsoleApp/ConsoleApp.csproj"
COPY . .
WORKDIR "/src/ConsoleApp"
RUN dotnet build "ConsoleApp.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "ConsoleApp.csproj" -c Release -o /app/publish /p:UseAppHost=false
FROM ironsoftwareofficial/windows:2019-net60
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "ConsoleApp.dll"]
FROM mcr.microsoft.com/dotnet/sdk:6.0-windowsservercore-ltsc2019 AS build
WORKDIR /src
COPY ["nuget.config", "."]
COPY ["ConsoleApp/ConsoleApp.csproj", "ConsoleApp/"]
RUN dotnet restore "ConsoleApp/ConsoleApp.csproj"
COPY . .
WORKDIR "/src/ConsoleApp"
RUN dotnet build "ConsoleApp.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "ConsoleApp.csproj" -c Release -o /app/publish /p:UseAppHost=false
FROM ironsoftwareofficial/windows:2019-net60
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "ConsoleApp.dll"]
造訪 IronSoftware 在 Docker Hub 的 Docker 資料庫,探索更多預配置的映像以運行 IronPdf。