在 Docker 容器中設定 IronWord
IronWord 完全支援 Docker 容器,適用於 Linux 和 Windows 環境,因此非常適合部署在 Azure、AWS 或任何其他平台上。 支援網路的主機。
為什麼要使用 Docker?
Docker 允許您將 IronWord 打包並運行為一個輕量級的、自包含的容器。 這確保了開發、測試和生產過程中行為的一致性——這在以程式設計方式產生或操作 Word 文件時尤其有價值。
IronWord 支援 .NET 5-9、.NET Standard (2.x, 3.x) 和 .NET Framework 4.6.2+,所有這些都可以在 Linux 和 Windows 上的 Docker 中無縫運行。
推薦的 Linux Docker 發行版
為了確保 IronWord 能流暢運行,我們推薦以下 64 位元 Linux 發行版:
- Ubuntu 22.04+ (Jammy)
- Ubuntu 20.04 (Focal)
- Debian 11+ (Bullseye) CentOS 7+
使用微軟官方的 Docker 映像以及 .NET 執行時期和 SDK,可以簡化安裝和相依性管理。
IronWord NuGet 套件
IronWord 可以透過其 NuGet 套件輕鬆添加到任何 .NET 專案中。 只需在 NuGet 套件管理器控制台中執行以下命令,它就會自動新增庫:
Install-Package IronWord
Ubuntu Dockerfile 範例
Ubuntu22 + .NET8
來自 mcr.microsoft.com/dotnet/runtime:8.0-jammy AS base
工作目錄 /app
來自 mcr.microsoft.com/dotnet/sdk:8.0-jammy AS 構建
工作目錄 /src
複製 ["Example/Example.csproj", "Example/"]
執行 dotnet restore "Example/Example.csproj"
複製 。 .
工作目錄"/src/Example"
執行 dotnet build "Example.csproj" -c Release -o /app/build
從建置 AS 發布
運行 dotnet publish "Example.csproj" -c Release -o /app/publish
從基地 AS 最終
工作目錄 /app
COPY --from=publish /app/publish .
入口點 ["dotnet", "Example.dll"]Ubuntu 20.04 + .NET 6 (LTS)
來自 mcr.microsoft.com/dotnet/runtime:6.0-focal AS base
工作目錄 /app
來自 mcr.microsoft.com/dotnet/sdk:6.0-focal AS 構建
工作目錄 /src
複製 ["Example/Example.csproj", "Example/"]
執行 dotnet restore "Example/Example.csproj"
複製 。 .
工作目錄"/src/Example"
執行 dotnet build "Example.csproj" -c Release -o /app/build
從建置 AS 發布
運行 dotnet publish "Example.csproj" -c Release -o /app/publish
從基地 AS 最終
工作目錄 /app
COPY --from=publish /app/publish .
入口點 ["dotnet", "Example.dll"]Debian Dockerfile 範例
Debian 11 + .NET 7
來自 mcr.microsoft.com/dotnet/aspnet:7.0-bullseye-slim AS base
工作目錄 /app
來自 mcr.microsoft.com/dotnet/sdk:7.0-bullseye-slim AS 構建
工作目錄 /src
複製 ["Example/Example.csproj", "Example/"]
執行 dotnet restore "Example/Example.csproj"
複製 。 .
工作目錄"/src/Example"
執行 dotnet build "Example.csproj" -c Release -o /app/build
從建置 AS 發布
運行 dotnet publish "Example.csproj" -c Release -o /app/publish
從基地 AS 最終
工作目錄 /app
COPY --from=publish /app/publish .
入口點 ["dotnet", "Example.dll"]CentOS 7
為了與 IronWord 相容,請使用基於 CentOS 的 .NET 運行時,例如 mcr.microsoft.com/dotnet/runtime:6.0-centos7。
# 建構階段
來自 mcr.microsoft.com/dotnet/sdk:6.0 AS 版本
工作目錄 /app
複製 ./Example/Example.csproj ./Example/
執行 dotnet restore "./Example/Example.csproj"
複製 ./範例 ./範例/
工作目錄 /app/範例
運行 dotnet publish -c Release -o /out
# 運行時階段 - CentOS 7
FROM mcr.microsoft.com/dotnet/runtime:6.0-centos7 AS runtime
工作目錄 /app
執行 yum install -y liberation-fonts && yum clean all
COPY --from=build /out ./
入口點 ["dotnet", "Example.dll"]注意事項和故障排除
- IronWord 完全支援 .NET5–9、.NET Standard (2.x, 3.x) 和 .NET Framework 4.6.2+。
- 如果需要,請在 Linux 容器上安裝字體(例如 fonts-liberation、ttf-mscorefonts-installer),以便正確渲染。
常見問題解答
什麼是 IronWord?為什麼要在 Docker 容器中使用它?
IronWord 是一個在 .NET 應用程序中處理 Word 文檔的函式庫。在 Docker 容器中使用它可以確保在 Linux 和 Windows 開發、測試和生產環境中的行為一致。
建議使用哪些 Linux 發行版在 Docker 中運行 IronWord?
IronWord 可以在 64 位 Linux 發行版流暢運行,例如 Ubuntu 22.04+ (Jammy)、Ubuntu 20.04 (Focal)、Debian 11+ (Bullseye) 和 CentOS 7+。
如何通過 NuGet 添加 IronWord 到 .NET 項目中?
可以在 NuGet 包管理器控制台中運行安裝命令將 IronWord 添加到 .NET 項目中,這會自動將該庫包括到項目中。
使用 Microsoft 官方 Docker 映像對於 IronWord 有什麼好處?
使用帶 .NET 運行時和 SDK 的 Microsoft 官方 Docker 映像能簡化設置和依賴管理,確保與 IronWord 的無縫集成。
有哪些設置 IronWord 在 Ubuntu 上的 Dockerfile 示例?
該頁面提供了使用 .NET 8 的 Ubuntu 22 和使用 .NET 6 的 Ubuntu 20.04 的 Dockerfile 示例,從設置基本映像到運行應用程序的步驟都進行了詳細說明。
如何使用 Docker 在 Debian 上設置 IronWord?
提供了一個針對 Debian 11 使用 .NET 7 的Dockerfile 示例,其中包括在 Docker 容器內構建和部署 IronWord 應用程序的步驟。
在 Linux 容器上使用 IronWord 是否需要安裝其他字體?
是的,可能需要在 Linux 容器上安裝字體,例如 fonts-liberation 或 ttf-mscorefonts-installer,以在使用 IronWord 時正確渲染文檔。
IronWord 支援所有版本的 .NET嗎?
IronWord 支援 .NET 5-9、.NET Standard (2.x, 3.x) 和 .NET Framework 4.6.2+,使其成為適合各種 .NET 應用程式版本的萬能工具。
將 IronWord 應用程式部署在 CentOS 7 上的步驟有哪些?
該頁面列出了 CentOS 7 的 Dockerfile,其中包括使用 .NET 6 執行時、安裝必要的字體以及設置運行 IronWord 應用程序的環境。
為什麼選擇 Docker 部署 IronWord 應用程序?
Docker 確保 IronWord 應用程序擁有輕量且獨立封裝的環境,在應用程序開發和部署的不同階段提供一致的性能。






