Setting up IronWord in Docker Containers

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronWord is fully supported in Docker containers for both Linux and Windows environments, making it ideal for deployment on Azure, AWS, or any . NET-ready host.

Why Use Docker?

Docker lets you package and run IronWord as a lightweight, self-contained container. This ensures consistent behavior across development, testing, and production—especially valuable when generating or manipulating Word documents programmatically.

IronWord supports .NET 5-9, .NET Standard (2.x, 3.x), and .NET Framework 4.6.2+, all of which work seamlessly in Docker on Linux and Windows.

We recommend the following 64‑bit Linux distros for smooth IronWord operation:

  • Ubuntu 22.04+ (Jammy)
  • Ubuntu 20.04 (Focal)
  • Debian 11+ (Bullseye)
  • CentOS7+

Use Microsoft’s official Docker images with the .NET runtime and SDK to simplify setup and dependency management

IronWord NuGet Package

IronWord is easily added to any .NET project through its NuGet package. Simply run the following command in the NuGet Package Manager Console, and it will add the library automatically:

Install-Package IronWord

Ubuntu Dockerfile Examples

Ubuntu22 + .NET8

FROM mcr.microsoft.com/dotnet/runtime:8.0-jammy AS base
WORKDIR /app

FROM mcr.microsoft.com/dotnet/sdk:8.0-jammy AS build
WORKDIR /src
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Ubuntu20.04 + .NET6 (LTS)

FROM mcr.microsoft.com/dotnet/runtime:6.0-focal AS base
WORKDIR /app

FROM mcr.microsoft.com/dotnet/sdk:6.0-focal AS build
WORKDIR /src
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

Debian Dockerfile Example

Debian11 + .NET7

FROM mcr.microsoft.com/dotnet/aspnet:7.0-bullseye-slim AS base
WORKDIR /app

FROM mcr.microsoft.com/dotnet/sdk:7.0-bullseye-slim AS build
WORKDIR /src
COPY ["Example/Example.csproj", "Example/"]
RUN dotnet restore "Example/Example.csproj"

COPY . .
WORKDIR "/src/Example"
RUN dotnet build "Example.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Example.dll"]

CentOS 7

Use CentOS-based .NET runtimes like mcr.microsoft.com/dotnet/runtime:6.0-centos7 for IronWord compatibility.

# Build stage
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /app

COPY ./Example/Example.csproj ./Example/
RUN dotnet restore "./Example/Example.csproj"

COPY ./Example ./Example/
WORKDIR /app/Example
RUN dotnet publish -c Release -o /out

# Runtime stage - CentOS 7
FROM mcr.microsoft.com/dotnet/runtime:6.0-centos7 AS runtime
WORKDIR /app

RUN yum install -y liberation-fonts && yum clean all

COPY --from=build /out ./

ENTRYPOINT ["dotnet", "Example.dll"]

Notes & Troubleshooting

  • IronWord fully supports .NET5–9, .NET Standard (2.x, 3.x), and .NET Framework 4.6.2+.
  • Install fonts if needed (e.g., fonts-liberation, ttf-mscorefonts-installer) on Linux containers for proper rendering.

Preguntas Frecuentes

¿Qué es IronWord y por qué usarlo en un contenedor Docker?

IronWord es una biblioteca para trabajar con documentos de Word en aplicaciones .NET. Usarlo en un contenedor Docker permite un comportamiento consistente a través de entornos de desarrollo, prueba y producción tanto en Linux como en Windows.

¿Qué distribuciones de Linux se recomiendan para ejecutar IronWord en Docker?

IronWord funciona bien en distribuciones de Linux de 64 bits como Ubuntu 22.04+ (Jammy), Ubuntu 20.04 (Focal), Debian 11+ (Bullseye) y CentOS 7+.

¿Cómo agrego IronWord a un proyecto .NET usando NuGet?

IronWord se puede agregar a un proyecto .NET ejecutando el comando de instalación en la consola del Gestor de Paquetes NuGet, lo que incluye automáticamente la biblioteca en tu proyecto.

¿Cuál es el beneficio de usar imágenes oficiales de Docker de Microsoft para IronWord?

Usar las imágenes oficiales de Docker de Microsoft con el runtime y SDK de .NET simplifica la configuración y gestión de dependencias, asegurando una integración sin problemas con IronWord.

¿Cuáles son algunos ejemplos de Dockerfiles para configurar IronWord en Ubuntu?

La página proporciona ejemplos de Dockerfile para Ubuntu 22 con .NET 8 y Ubuntu 20.04 con .NET 6, detallando pasos desde la configuración de la imagen base hasta la ejecución de la aplicación.

¿Cómo puedo configurar IronWord en Debian usando Docker?

Se proporciona un ejemplo de Dockerfile para Debian 11 con .NET 7, que incluye pasos para compilar y desplegar la aplicación IronWord dentro de un contenedor Docker.

¿Es necesario instalar fuentes adicionales para IronWord en contenedores Linux?

Sí, puede ser necesario instalar fuentes como fonts-liberation o ttf-mscorefonts-installer en contenedores Linux para una correcta representación de documentos al usar IronWord.

¿IronWord soporta todas las versiones de .NET?

IronWord soporta .NET 5-9, .NET Standard (2.x, 3.x) y .NET Framework 4.6.2+, haciéndolo versátil para varias versiones de aplicaciones .NET.

¿Cuáles son los pasos para desplegar una aplicación de IronWord en CentOS 7?

La página describe un Dockerfile para CentOS 7, que incluye el uso de un runtime .NET 6, la instalación de fuentes necesarias, y la configuración del entorno para ejecutar aplicaciones IronWord.

¿Por qué elegir Docker para desplegar aplicaciones IronWord?

Docker asegura que las aplicaciones IronWord tengan un entorno ligero y autónomo, proporcionando un rendimiento consistente a través de diferentes etapas de desarrollo y despliegue de aplicaciones.

Kye Stuart
Escritor Técnico

Kye Stuart fusiona la pasión por la codificación y la habilidad para escribir en Iron Software. Educado en Yoobee College en despliegue de software, ahora transforma conceptos tecnológicos complejos en contenido educativo claro. Kye valora el aprendizaje continuo y acepta nuevos desafíos tecnológicos.

<...
Leer más
¿Listo para empezar?
Nuget Descargas 25,807 | Versión: 2025.11 recién lanzado