將 IronPDF 加入現有的 Docker 容器
IronPDF for .NET Standard 現在完全支持 Docker,包括用於 Linux 和 Windows 的 Azure Docker 容器。
您想將IronPDF部署為單獨的Docker容器嗎? 進一步了解IronPDF 引擎教程指南.
為什麼在 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
亞馬遜 AWS Linux 2閱讀 IronPDF AWS Lambda 安裝指南
我們推薦使用 Microsoft 的適用於 .NET 的官方 Docker 映像 . 其他 Linux 發行版部分支持,但可能需要使用 apt-get 手動配置。 請查看我們的 "Linux 手動設置"指南"
此文件中包含適用於 Ubuntu 和 Debian 的工作 Docker 文件:
IronPDF Linux Docker 安裝基本要素
使用針對 Linux 優化的 NuGet 套件
我们建议使用IronPdf.LinuxNuGet 套件而不是常規IronPDF節省磁碟空間並避免啟動 Docker 實例時下載資產的套件。 不用擔心,無論是在Windows或macOS上開發,它仍然有效 - 它只是針對Linux優化。
Install-Package IronPdf.Linux
另一個解決方案是簡單地添加IronPdf.Native.Chrome.Linux在一般情況之上IronPDFNuGet 套件。
Install-Package IronPdf.Native.Chrome.Linux
避免自動安裝依賴性
許多用戶報告,在將 LinuxAndDockerDependenciesAutoConfig
設置為 false 時,Linux 和 Docker 的效果會更好。 這是因為先決條件已經由 apt-get 風格的包管理器在您的 Docker 文件中安裝好了。
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;
禁用 GPU 加速
Linux Docker 容器通常無法訪問 GPU。 GPU 加速預設為停用。 如果您已啟用 ChromeGpuModes.Enabled,我們強烈建議您在 Docker 部署中停用它:
IronPdf.Installation.ChromeGpuMode=IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
"提前" 初始化
您可以选择调用 IronPdf.Installation.Initialize
()` 方法以手動啟動 IronPDF。 首次使用 IronPDF 的 Docker 實例可能需要一些時間來下載先決條件。 我們可以在創建實例時調用此代碼以避免這種情況:
IronPdf.Installation.Initialize();
Ubuntu Linux DockerFiles
Ubuntu Linux DockerFiles
Ubuntu 22 與 .NET 8
請將使用者從 'app' 更改為 'root'。 這將確保授予庫足夠的權限。 有了這項變更,將不需要為IronCefSubprocess設定'rwx'。
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 run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
步驟 2:設定控制台應用程序
建立一個針對 .NET 6 的新控制台應用程式。
使用 NuGet 包管理器安裝 IronPdf.Slim NuGet 包。
IronPDF Windows Docker 容器
Windows Docker 容器在 Azure 上變得越來越受歡迎,因為它們提供更高的性能和可擴展性,並且讓開發者有更多配置實例的權限。
IronPDF 將在 Docker 容器內執行更吸引人的文字渲染。(Windows 或 Linux)在 Azure 上,由於能夠更高程度地訪問圖形庫和虛擬顯示卡。
The article 'Visual Studio 容器工具 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"]
訪問IronSoftware 在 Docker Hub 上的 Docker 儲存庫探索更多預先配置的IronPDF運行映像。