Ajouter IronPDF à un conteneur Docker existant
IronPDF for .NET Standard prend désormais entièrement en charge Docker, notamment les conteneurs Azure Docker pour Linux et Windows.
Souhaitez-vous plutôt déployer IronPDF en tant que conteneur Docker distinct ? En savoir plus sur le guide des tutoriels de l'IronPDF Engine.





Pourquoi utiliser Docker sur Azure ?
Outre une évolutivité entreprise excellente, les conteneurs Docker sur Azure bénéficiaient de plus de permissions que les applications Web régulières.
Cela permet le rendu des polices SVG, car l'accès du système aux graphiques GDI+ est activé.
IronPDF et Linux Primer
Si Docker avec .NET est nouveau pour vous, nous vous recommandons cet excellent article sur la configuration du débogage Docker et l'intégration avec les projets Visual Studio.
Nous vous recommandons également vivement de lire notre Guide d'installation et de compatibilité d'IronPDF pour Linux
Distributions Linux Docker recommandées
Nous recommandons les derniers systèmes d'exploitation Linux 64 bits ci-dessous pour une "configuration facile" d'IronPDF.
- Ubuntu 22
- Ubuntu 20
- Ubuntu 18
- Debian 11
- Debian 10 [Actuellement la distribution Linux par défaut sur Microsoft Azure]
- CentOS 8
Amazon AWS Linux 2 Lisez le Guide de configuration IronPDF AWS Lambda
Nous recommandons d'utiliser les images Docker officielles de Microsoft pour .NET. Les autres distributions Linux sont partiellement prises en charge, mais peuvent nécessiter une configuration manuelle à l'aide d'apt-get. Consultez notre guide "Configuration manuelle sous Linux"
Des fichiers Docker fonctionnels pour Ubuntu et Debian sont inclus dans ce document :
IronPDF Linux Docker Installation Essentials (en anglais)
Utiliser des paquets NuGet optimisés pour Linux
Nous vous recommandons d'utiliser le package NuGet IronPdf.Linux au lieu du package IronPdf habituel pour économiser de l'espace disque et éviter le téléchargement des ressources lorsque vous démarrez votre instance Docker. Ne vous inquiétez pas, il fonctionne toujours lorsque vous développez sous Windows ou macOS - il est simplement optimisé pour Linux.
:InstallCmd Install-Package IronPdf.Linux
:InstallCmd Install-Package IronPdf.Linux
Une autre solution consiste simplement à ajouter IronPdf.Native.Chrome.Linux par-dessus le package NuGet régulier IronPdf.
:InstallCmd Install-Package IronPdf.Native.Chrome.Linux
:InstallCmd Install-Package IronPdf.Native.Chrome.Linux
Éviter l'installation automatique de dépendances
De nombreux utilisateurs signalent de meilleurs résultats avec Linux & Docker lorsque LinuxAndDockerDependenciesAutoConfig
est réglé sur false. C'est parce que les prérequis sont déjà installés par des gestionnaires de paquets de style apt-get déjà présents dans vos fichiers Docker.
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = false;
Désactiver l'accélération du GPU
Les conteneurs Linux Docker n'ont souvent pas accès à un GPU. L'accélération GPU est désactivée par défaut. Si vous avez activé ChromeGpuModes.Enabled, nous vous recommandons fortement de le désactiver pour les déploiements Docker :
IronPdf.Installation.ChromeGpuMode=IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.ChromeGpuMode=IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
"Initialisation "anticipée
Optionnellement, vous pouvez également souhaiter appeler la méthode IronPdf.Installation.Initialize()
pour démarrer manuellement IronPDF. La toute première fois qu'une instance Docker utilise IronPDF, le téléchargement des prérequis peut prendre un certain temps. Nous pouvons éviter ce scénario en appelant ce code lors de la création de l'instance :
IronPdf.Installation.Initialize();
IronPdf.Installation.Initialize();
Ubuntu Linux DockerFiles


Ubuntu 22 avec .NET 8
Ubuntu 22 avec .NET 7
Ubuntu 20 avec .NET 6
Ubuntu 20 avec .NET 5
Ubuntu 20 avec .NET 3.1 LTS
Ubuntu 18 avec .NET 3.1 LTS
Debian Linux DockerFiles


Debian 12 avec .NET 8
Debian 11 avec .NET 7
Debian 11 avec .NET 6
Debian 11 avec .NET 5
Debian 11 avec .NET 3.1 LTS
Debian 10 avec .NET 5
Debian 10 avec .NET 3.1 LTS
Alpine Linux DockerFiles
L'exécution d'IronPDF sur Alpine Linux n'est pas prise en charge. Nous aimerions pouvoir le faire, mais nous ne le pouvons pas. Franchement, nous aimons Alpine et nous espérons que ce projet se poursuivra et se développera. En 2023, C# utilise encore des bibliothèques de langage C "musl" obsolètes qui ne permettent pas encore aux développeurs de Chromium de prendre pleinement en charge cet OS.
Utiliser Alpine Docker avec IronPdfEngine dans .NET 6
IronPdf fournit une image conteneur contenant toutes les fonctionnalités d'IronPdf. Cela permet aux projets fonctionnant sur IronPDF d'accéder aux fonctionnalités d'IronPdf en se connectant à un conteneur IronPdfEngine.
Étape 1 : Tirer et exécuter l'image Docker du moteur IronPDF
Exécutez les commandes suivantes dans votre terminal pour tirer et exécuter l'image Docker du moteur IronPDF :
docker pull ironsoftwareofficial/ironpdfengine
docker pull ironsoftwareofficial/ironpdfengine
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
Étape 2 : Configuration de l'application Console
Créez une nouvelle application console ciblant .NET 6.
Installez le package NuGet IronPdf.Slim à l'aide du gestionnaire de packages NuGet.
IronPDF Conteneurs Docker pour Windows


Les conteneurs Windows Docker sont de plus en plus populaires sur Azure, car ils offrent des niveaux de performance et d'évolutivité plus élevés, et donnent aux développeurs plus de permissions pour configurer les instances.
IronPDF effectuera en réalité un rendu de texte plus attractif dans un conteneur Docker (Windows ou Linux) sur Azure en raison d'un accès plus élevé à la bibliothèque graphique et à la carte graphique virtuelle.
L'article 'Visual Studio Container Tools for Docker' est un excellent guide pour débuter.
Voici un exemple de fichier Docker de conteneur Windows pour .NET Core 3.1
Windows Server 2019 .NET 6.0
Conteneurs Windows préconfigurés comprenant toutes les dépendances nécessaires à l'exécution d'IronPDF.
A noter
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"]
Visitez le dépôt Docker de IronSoftware sur Docker Hub pour explorer d'autres images préconfigurées pour exécuter IronPdf.