Configurando o IronWord em contêineres Docker
O IronWord é totalmente compatível com contêineres Docker para ambientes Linux e Windows, tornando-o ideal para implantação no Azure, AWS ou qualquer outro serviço. Host pronto para NET.
Por que usar o Docker?
O Docker permite empacotar e executar o IronWord como um contêiner leve e independente. Isso garante um comportamento consistente durante o desenvolvimento, os testes e a produção — algo especialmente valioso ao gerar ou manipular documentos do Word programaticamente.
O IronWord é compatível com .NET 5-9, .NET Standard (2.x, 3.x) e .NET Framework 4.6.2+, todos funcionando perfeitamente no Docker em Linux e Windows.
Distribuições Linux recomendadas para Docker
Recomendamos as seguintes distribuições Linux de 64 bits para um funcionamento perfeito do IronWord :
- Ubuntu 22.04+ (Jammy)
- Ubuntu 20.04 (Focal)
- Debian 11+ (Bullseye)
- CentOS 7+
Use as imagens oficiais do Docker da Microsoft com o runtime e o SDK do .NET para simplificar a configuração e o gerenciamento de dependências.
Pacote NuGet IronWord
O IronWord pode ser facilmente adicionado a qualquer projeto .NET através do seu pacote NuGet . Basta executar o seguinte comando no Console do Gerenciador de Pacotes NuGet , e a biblioteca será adicionada automaticamente:
Install-Package IronWord
Exemplos de Dockerfile para Ubuntu
Ubuntu 22 + .NET 8
DE mcr.microsoft.com/dotnet/runtime:8.0-jammy COMO base
DIRETÓRIO DE TRABALHO /aplicativo
DE mcr.microsoft.com/dotnet/sdk:8.0-jammy COMO build
WORKDIR /src
COPIAR ["Exemplo/Exemplo.csproj", "Exemplo/"]
RUN dotnet restore "Example/Example.csproj"
CÓPIA. .
DIRETÓRIO DE TRABALHO "/src/Exemplo"
Execute o comando `dotnet build "Example.csproj" -c Release -o /app/build`.
A partir de build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish
A PARTIR DA BASE COMO FINAL
DIRETÓRIO DE TRABALHO /aplicativo
COPIAR --de=publicar /app/publicar .
ENTRYPOINT ["dotnet", "Example.dll"]
Ubuntu 20.04 + .NET 6 (LTS)
DE mcr.microsoft.com/dotnet/runtime:6.0-focal COMO base
DIRETÓRIO DE TRABALHO /aplicativo
DE mcr.microsoft.com/dotnet/sdk:6.0-focal COMO build
WORKDIR /src
COPIAR ["Exemplo/Exemplo.csproj", "Exemplo/"]
RUN dotnet restore "Example/Example.csproj"
CÓPIA. .
DIRETÓRIO DE TRABALHO "/src/Exemplo"
Execute o comando `dotnet build "Example.csproj" -c Release -o /app/build`.
A partir de build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish
A PARTIR DA BASE COMO FINAL
DIRETÓRIO DE TRABALHO /aplicativo
COPIAR --de=publicar /app/publicar .
ENTRYPOINT ["dotnet", "Example.dll"]
Exemplo de Dockerfile para Debian
Debian 11 + .NET 7
FROM mcr.microsoft.com/dotnet/aspnet:7.0-bullseye-slim AS base
DIRETÓRIO DE TRABALHO /aplicativo
DE mcr.microsoft.com/dotnet/sdk:7.0-bullseye-slim COMO build
WORKDIR /src
COPIAR ["Exemplo/Exemplo.csproj", "Exemplo/"]
RUN dotnet restore "Example/Example.csproj"
CÓPIA. .
DIRETÓRIO DE TRABALHO "/src/Exemplo"
Execute o comando `dotnet build "Example.csproj" -c Release -o /app/build`.
A partir de build AS publish
RUN dotnet publish "Example.csproj" -c Release -o /app/publish
A PARTIR DA BASE COMO FINAL
DIRETÓRIO DE TRABALHO /aplicativo
COPIAR --de=publicar /app/publicar .
ENTRYPOINT ["dotnet", "Example.dll"]
CentOS 7
Use ambientes de execução .NET baseados em CentOS, como mcr.microsoft.com/dotnet/runtime:6.0-centos7, para compatibilidade com o IronWord .
# Fase de construção
DE mcr.microsoft.com/dotnet/sdk:6.0 COMO build
DIRETÓRIO DE TRABALHO /aplicativo
COPIAR ./Example/Example.csproj ./Example/
EXECUTE dotnet restore "./Example/Example.csproj"
COPIAR ./Exemplo ./Exemplo/
DIRETÓRIO DE TRABALHO /aplicativo/Example
RUN dotnet publish -c Release -o /out
# Estágio de execução - CentOS 7
DE mcr.microsoft.com/dotnet/runtime:6.0-centos7 COMO runtime
DIRETÓRIO DE TRABALHO /aplicativo
EXECUTE yum install -y liberation-fonts && yum clean all
COPIAR --de=construir /saída ./
ENTRYPOINT ["dotnet", "Example.dll"]
Notas e resolução de problemas
- O IronWord oferece suporte completo ao .NET 5–9, .NET Standard (2.x, 3.x) e .NET Framework 4.6.2+.
- Instale as fontes, se necessário (por exemplo, fonts-liberation, ttf-mscorefonts-installer), nos contêineres Linux para uma renderização adequada.
Perguntas frequentes
O que é o IronWord e por que usá-lo em um contêiner Docker?
IronWord é uma biblioteca para trabalhar com documentos do Word em aplicações .NET. Utilizá-la em um contêiner Docker permite um comportamento consistente em ambientes de desenvolvimento, teste e produção, tanto em Linux quanto em Windows.
Quais distribuições Linux são recomendadas para executar o IronWord no Docker?
O IronWord funciona perfeitamente em distribuições Linux de 64 bits, como Ubuntu 22.04+ (Jammy), Ubuntu 20.04 (Focal), Debian 11+ (Bullseye) e CentOS 7+.
Como adiciono o IronWord a um projeto .NET usando o NuGet?
O IronWord pode ser adicionado a um projeto .NET executando o comando de instalação no Console do Gerenciador de Pacotes NuGet, que inclui automaticamente a biblioteca em seu projeto.
Qual a vantagem de usar as imagens oficiais do Docker da Microsoft para o IronWord?
Utilizar as imagens oficiais do Docker da Microsoft com o runtime e o SDK do .NET simplifica a configuração e o gerenciamento de dependências, garantindo uma integração perfeita com o IronWord.
Quais são alguns exemplos de Dockerfiles para configurar o IronWord no Ubuntu?
A página fornece exemplos de Dockerfile para Ubuntu 22 com .NET 8 e Ubuntu 20.04 com .NET 6, detalhando os passos desde a configuração da imagem base até a execução da aplicação.
Como posso configurar o IronWord no Debian usando o Docker?
É fornecido um exemplo de Dockerfile para Debian 11 com .NET 7, que inclui etapas para construir e implantar o aplicativo IronWord dentro de um contêiner Docker.
É necessário instalar fontes adicionais para o IronWord em contêineres Linux?
Sim, a instalação de fontes como fonts-liberation ou ttf-mscorefonts-installer pode ser necessária em contêineres Linux para a renderização correta de documentos ao usar o IronWord.
O IronWord é compatível com todas as versões do .NET?
O IronWord é compatível com .NET 5-9, .NET Standard (2.x, 3.x) e .NET Framework 4.6.2+, o que o torna versátil para diversas versões de aplicativos .NET.
Quais são os passos para implantar um aplicativo IronWord no CentOS 7?
A página descreve um Dockerfile para CentOS 7, que inclui o uso de um ambiente de execução .NET 6, a instalação das fontes necessárias e a configuração do ambiente para executar aplicativos IronWord.
Por que escolher o Docker para implantar aplicativos IronWord?
O Docker garante que os aplicativos IronWord tenham um ambiente leve e independente, proporcionando desempenho consistente em diferentes estágios de desenvolvimento e implantação do aplicativo.

