Exécutez IronPDF en tant que conteneur distant
Le IronPdfEngine est un service autonome capable de gérer la création, la rédaction, la modification et la lecture de PDF. IronPDF Docker est prêt à exécuter des services Docker avec des versions compatibles d'IronPDF(v2023.2.x et plus). Cela aidera les développeurs à éradiquer les problèmes de déploiement qu'ils peuvent rencontrer avec IronPDF.
Pourquoi exécuter IronPDF comme son propre conteneur est une bonne idée
IronPDF nécessite les binaires Chrome et Pdfium pour fonctionner, ce qui représente une taille de fichier considérable(des centaines de MB). Il nécessite également l'installation de plusieurs dépendances sur la machine.
Grâce à cette méthode, votre client n'occupera qu'une fraction de la taille de l'ordinateur(en MB).
Éviter les problèmes de déploiement
Il peut être difficile de configurer l'environnement/le conteneur pour inclure correctement toutes les dépendances. En utilisant le conteneur Docker IronPDF, IronPDF est pré-installé et garanti de fonctionner, ce qui évite tous les maux de tête liés au déploiement et aux dépendances.
Versions
La balise Docker IronPDF est basée sur la version d'IronPdfEngine elle-même. Il ne s'agit pas de la même version que le produit IronPDF.
Chaque version d'IronPDF sera associée à une version d'IronPdfEngine. Le numéro de version doit correspondre à la version Docker d'IronPDF.
Par exemple : Pour IronPDF for Java
version 2023.2.1
nécessite IronPdfEngine version 2023.2.1
. Vous ne pouvez pas utiliser des versions d'IronPdfEngine et d'IronPDF qui ne correspondent pas.
Comment utiliser IronPDF Docker
Installer IronPDF
Ajoutez le paquetage Nuget IronPdf.Slim à votre projet.
https://www.nuget.org/packages/IronPdf.Slim/
Note : Les paquets IronPdf
, IronPdf.Linux
et IronPdf.MacOs
contiennent tous IronPdf.Slim.
Pour réduire la taille de votre application, nous vous recommandons d'installer uniquement IronPDF.Slim. Le paquet IronPdf.Native.Chrome.xxx
n'est plus utilisé, vous pouvez donc le supprimer de votre projet.
Déterminer la version de conteneur requise
Par défaut, la version d'IronPDF pour Docker correspondra à la version actuelle d'IronPDF sur NuGet. Vous pouvez utiliser le code ci-dessous pour vérifier la version manuellement :
:path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-version.cs
string ironPdfEngineVersion = IronPdf.Installation.IronPdfEngineVersion;
Dim ironPdfEngineVersion As String = IronPdf.Installation.IronPdfEngineVersion
Configuration d'IronPDF pour le conteneur Docker
Sans Docker Compose
Exécutez le conteneur Docker en utilisant la version de l'étape précédente.
Docker doit être installé.
Configuration
Aller sur https://hub.docker.com/r/ironsoftwareofficial/ironpdfengine
- Extraire la dernière image ironsoftwareofficial/ironpdfengine
docker pull ironsoftwareofficial/ironpdfengine
Ou tirer la version spécifique(recommandé)
docker pull ironsoftwareofficial/ironpdfengine:2023.12.6
Exécutez le conteneur ironsoftwareofficial/ironpdfengine.
Cette commande créera un conteneur et s'exécutera en arrière-plan sur le port 33350
docker run -d -e IRONPDF_ENGINE_LICENSE_KEY=MY_LICENSE_KEY --network=ironpdf-network --ip=172.19.0.2 --name=ironpdfengine --hostname=ironpdfengine -p 33350:33350 ironsoftwareofficial/ironpdfengine:2023.12.6
Avec Docker Compose
La clé est de mettre en place un réseau Docker qui permet à IronPdfEngine et à votre application de se voir. Définissez 'depends_on' pour vous assurer que IronPdfEngine est en place avant que votre application ne démarre.
Configuration
- Commencez par créer un fichier
docker-compose.yml
. Configurez votre fichier Docker Compose en utilisant le modèle suivant :
version: "3.6"
services:
myironpdfengine:
container_name: ironpdfengine
image: ironsoftwareofficial/ironpdfengine:latest
ports:
- "33350:33350"
networks:
- ironpdf-network
myconsoleapp:
container_name: myconsoleapp
build:
# enter YOUR project directory path here
context: ./MyConsoleApp/
# enter YOUR dockerfile name here, relative to project directory
dockerfile: Dockerfile
networks:
- ironpdf-network
depends_on:
myironpdfengine:
condition: service_started
networks:
ironpdf-network:
driver: "bridge"
Définissez l'adresse d'IronPdfEngine dans votre application(myconsoleapp) vers "myironpdfengine:33350"
- Exécuter docker compose
docker compose up --detach --force-recreate --remove-orphans --timestamps
Se connecter à IronPdfEngine
Exécutez votre code IronPDF, votre application parle maintenant à l'IronPdfEngine dans Docker!
:path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-use.cs
using IronPdf;
using IronPdf.GrpcLayer;
// Configure for Docker container
var config = new IronPdfConnectionConfiguration();
config.ConnectionType = IronPdfConnectionType.Docker;
IronPdf.Installation.ConnectToIronPdfHost(config);
// Use IronPDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>");
pdf.SaveAs("ironpdf.pdf");
Imports IronPdf
Imports IronPdf.GrpcLayer
' Configure for Docker container
Private config = New IronPdfConnectionConfiguration()
config.ConnectionType = IronPdfConnectionType.Docker
IronPdf.Installation.ConnectToIronPdfHost(config)
' Use IronPDF
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>")
pdf.SaveAs("ironpdf.pdf")
Déployer IronPdfEngine sur AWS ECS
Conditions préalables
- Téléchargez l'image Docker IronPdfEngine. Ceci est dans leConfiguration d'IronPDF pour le conteneur Dockerci-dessus.
- Un compte AWS avec accès à ECS.
Mise en place
Créer un cluster ECS. Suivez ce guide surcréation d'un cluster pour le type de lancement Fargate et External à l'aide de la console.
Créer une définition de tâche. Suivez ce guide pourcréer une définition de tâche à l'aide de la console.
Paramètres recommandés :
- AWS Fargate
- Un minimum de 1 vCPU avec 2 GB de RAM est recommandé. En fonction de votre charge de travail, si vous travaillez avec des PDF contenant plus de 10 pages ou si vous avez des demandes de charge importantes, veuillez sélectionner un niveau supérieur.
- Mode réseau : awsvpc
- Mappages de ports :
"containerPort": 33350,
"hostPort": 33350,
"protocol": "tcp",
"appProtocol": "grpc"
- Image URI : pointe vers n'importe quel IronPdfEngine de notre société. Par exemple, "ironsoftwareofficial/ironpdfengine:2024.1.20"(de DockerHub)
- AWS Permission & Networking sont à votre charge
- Il est recommandé d'activer Amazon CloudWatch. (Activer la journalisation)
- L'ordre de démarrage des conteneurs est nécessaire si vous souhaitez déployer votre conteneur d'application dans la même définition de tâche.
Exécuter une définition de tâche. Vous pouvez exécuter une définition de tâche en tant que Tâche ou Service. Suivez ce guide surcréer un service à l'aide de la console.
Paramètres recommandés :
- Type de lancement : AWS Fargate
- IP publique : activée pour les tests et désactivée pour la production. La sécurité et le réseau AWS sont à votre charge.
Appréciez! IronPdfEngine docker est en place et fonctionne dans votre AWS!
[{i :(La mise à l'échelle horizontale n'est pas prise en charge. Veuillez vous référer à laLimitation de IronPdfEngine pour plus d'informations.)}]
Déployer IronPdfEngine sur des instances de conteneurs Azure
Conditions préalables
- Téléchargez l'image Docker IronPdfEngine. Ceci est dans leConfiguration d'IronPDF pour le conteneur Dockerci-dessus.
- Compte Azure
Mise en place
Créer un conteneur Azure. À suivreguide de démarrage rapide pour le déploiement d'une instance de conteneur dans Azure à l'aide du portail Azure.
Paramètres recommandés :
- Source de l'image : Autre registre
- Image : ironsoftwareofficial/ironpdfengine:2024.1.20(de Docker Hub)
- type de système d'exploitation : Linux
- Taille : Minimum de 1 vCPU et 2 GiB de mémoire, ou plus
- Port : Port TCP 33350
Appréciez! IronPdfEngine docker est opérationnel dans vos Instances de Conteneurs Azure!
[{i :(La mise à l'échelle horizontale n'est pas prise en charge. Veuillez vous référer à laLimitation de IronPdfEngine pour plus d'informations.)}]
Obtenir IronPdfEngine dans AWS ECR Public Gallery
Prérequis
- Docker doit être installé.
Mise en place
- Tirer l'image v1m9w8y1/ironpdfengine
docker pull https://gallery.ecr.aws/v1m9w8y1/ironpdfengine
Ou tirer la version spécifique(recommandé)
docker pull https://gallery.ecr.aws/v1m9w8y1/ironpdfengine:2023.12.6
Lancer le conteneur ironpdfengine.
Cette commande créera un conteneur et s'exécutera en arrière-plan sur le port 33350
docker run -d -p 33350:33350 ironsoftwareofficial/ironpdfengine
Apprenez à configurer le client IronPDF pour utiliser IronPdfEngine en naviguant vers la section "Mettre à jour le code pour utiliser IronPdfEngine."
Obtenez IronPdfEngine sur le Marketplace
Pour vous aider à démarrer rapidement, nous avons mis en place IronPdfEngine sur les marketplaces Azure et AWS.
Place de marché Azure
Configuration
Aller àConteneur Docker IronPDF sur Azure Marketplace. Cliquez sur "Obtenir maintenant" et "Continuer"
Complétez les rubriques "Basics", "Cluster Details" et "Application Details" pour créer le service Kubernetes.
- Une fois le déploiement terminé, dans la barre latérale de gauche, allez dans Ressources Kubernetes -> Exécuter la commande. Exécutez la commande suivante :
kubectl get services

Avec les informations EXTERNAL-IP et PORT(S)vous pouvez configurer la connexion IronPDFEngine en conséquence.
:path=/static-assets/pdf/content-code-examples/how-to/pull-run-ironpdfengine-azure-marketplace.cs
using IronPdf;
using IronPdf.GrpcLayer;
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
IronPdfConnectionConfiguration configuration = new IronPdfConnectionConfiguration();
configuration.ConnectionType = IronPdfConnectionType.RemoteServer;
configuration.Host = "http://48.216.143.233";
configuration.Port = 80;
IronPdf.Installation.ConnectToIronPdfHost(configuration);
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");
pdf.SaveAs("output.pdf");
Imports IronPdf
Imports IronPdf.GrpcLayer
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim configuration As New IronPdfConnectionConfiguration()
configuration.ConnectionType = IronPdfConnectionType.RemoteServer
configuration.Host = "http://48.216.143.233"
configuration.Port = 80
IronPdf.Installation.ConnectToIronPdfHost(configuration)
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>testing</h1>")
pdf.SaveAs("output.pdf")
AWS Marketplace
Prérequis
- Docker doit être installé.
AWS CLI doit être installé et connecté.
Configuration
Aller àIronPdfEngine sur la place de marché AWS. Cliquez sur le bouton "Continuer à s'abonner"
Accepter les conditions.
Continuer jusqu'à la Confiuguration.
- Tirer l'image d'ironpdfengine. Cette étape vous montrera une commande pour extraire l'image de ironpdfengine.
Par exemple :
aws ecr get-login-password \
--region us-east-1
docker login \
--username AWS \
--password-stdin 000000000000.dkr.ecr.us-east-1.amazonaws.com
CONTAINER_IMAGES="000000000000.dkr.ecr.us-east-1.amazonaws.com/iron-software/ironpdfengine:2024.1.15"
for i in $(echo $CONTAINER_IMAGES
sed "s/,/ /g"); do docker pull $i; done
- Exécutez le conteneur ironpdfengine. Cette commande crée un conteneur et l'exécute en arrière-plan sur le port 33350.
docker run -d -p 33350:33350 000000000000.dkr.ecr.us-east-1.amazonaws.com/iron-software/ironpdfengine:2024.1.15