Aloje su propio contenedor Docker IronPDF
Sólo funciona con IronPDF v.2023.2.x y superior
IronPdfEngine es un servicio gRPC que puede manejar la creación, escritura, edición y lectura de PDFs.
IronPDF Docker está preparado para ejecutar servicios Docker con versiones compatibles de IronPDF (v2023.2.x y superior). Esto ayudará a los desarrolladores a erradicar los problemas de despliegue que puedan estar experimentando con IronPDF.
Por qué
Para funcionar, IronPDF necesita los binarios Chrome y Pdfium, cuyo tamaño es enorme. (cientos de MB). También requiere la instalación de varias dependencias en la máquina.
Utilizando este método, su cliente sólo ocupará una fracción del tamaño (en MB).
Evitar problemas de implantación
Puede resultar difícil configurar el entorno/contenedor para incluir correctamente todas las dependencias. El uso del contenedor Docker IronPDF significa que IronPDF viene preinstalado y garantizado para funcionar, evitando todos los dolores de cabeza de despliegue y dependencia.
Versiones
La etiqueta IronPDF Docker se basa en la versión del propio IronPdfEngine. No es la misma versión que el producto IronPDF.
Cada versión IronPDF tendrá su propia versión IronPdfEngine asociada. El número de versión debe coincidir con la versión Docker de IronPDF.
Por ejemplo: Para IronPDF for Java
versión 2023.2.1
se requiere IronPdfEngine versión 2023.2.1
. No se pueden utilizar versiones de IronPdfEngine e IronPDF que no coincidan.
Cómo utilizar IronPDF Docker
Paso 1 - Instalar IronPDF
Añada el paquete Nuget IronPdf.Slim a su proyecto.
https://www.nuget.org/packages/IronPdf.Slim/
Más información: https://ironpdf.com/docs/
Nota: Los paquetes IronPdf
, IronPdf.Linux
e IronPdf.MacOs
contienen todos IronPdf.Slim..
Para reducir el tamaño de la aplicación, recomendamos instalar sólo IronPdf.Slim. El paquete IronPdf.Native.Chrome.xxx
ya no se utiliza, por lo que puedes eliminarlo de tu proyecto.
Paso 2 - Determinar la versión de contenedor necesaria
Por defecto, la versión de IronPDF para Docker coincidirá con la versión actual de IronPDF en NuGet.
Además, puede confirmarlo comprobando la versión manualmente:
: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
Paso 3 - Configuración de IronPDF para contenedores Docker
Paso 3.i - Sin Docker Compose
Ejecute el contenedor docker utilizando la versión del paso anterior
Por ejemplo para IronPDF para Docker versión por ejemplo 2023.2.1
: ``` docker network create -d bridge --attachable --subred=172.19.0.0/16 --gateway=172.19.0.1 ironpdf-network
docker run -d -e IRONPDF_ENGINE_LICENSE_KEY=MY_LICENSE_KEY --network=red-ironpdf --ip=172.19.0.2 --name=ironpdfengine --hostname=ironpdfengine -p 33350:33350 ironsoftwareofficial/ironpdfengine:2023.2.1
El puerto 33350 es el puerto interno por defecto de IronPdfEngine
Ahora IronPDF para Docker está en funcionamiento!
#### Paso 3.ii - Con Docker Compose
Configure su archivo Docker Compose utilizando la siguiente plantilla:
```yaml
version: "3.3"
services:
ironpdfengine:
container_name: ironpdfengine
image: ironsoftwareofficial/ironpdfengine:latest
networks:
ironpdf-network:
ipv4_address: 172.19.0.2
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:
ipv4_address: 172.19.0.3
depends_on:
ironpdfengine:
condition: service_started
networks:
ironpdf-network:
driver: bridge
ipam:
config:
- subnet: 172.19.0.0/16
gateway: 172.19.0.1
Y luego ejecute su comando docker compose como el siguiente:
docker compose up --detach --force-recreate --remove-orphans --timestamps
Paso 4 - Configure su cliente IronPDF
Añade esta línea:
:path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-configure.cs
using IronPdf.GrpcLayer;
var config = new IronPdfConnectionConfiguration();
config.ConnectionType = IronPdfConnectionType.Docker;
IronPdf.Installation.ConnectToIronPdfHost(config);
Imports IronPdf.GrpcLayer
Private config = New IronPdfConnectionConfiguration()
config.ConnectionType = IronPdfConnectionType.Docker
IronPdf.Installation.ConnectToIronPdfHost(config)
Paso 5 - Disfrutar
Ejecute su código IronPDF, su aplicación ahora habla con el IronPdfEngine en Docker!
Código de prueba cliente
:path=/static-assets/pdf/content-code-examples/how-to/ironpdfengine-docker-use.cs
using IronPdf;
using IronPdf.GrpcLayer;
var config = new IronPdfConnectionConfiguration();
config.ConnectionType = IronPdfConnectionType.Docker;
IronPdf.Installation.ConnectToIronPdfHost(config);
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>");
pdf.SaveAs("ironpdf.pdf");
Imports IronPdf
Imports IronPdf.GrpcLayer
Private config = New IronPdfConnectionConfiguration()
config.ConnectionType = IronPdfConnectionType.Docker
IronPdf.Installation.ConnectToIronPdfHost(config)
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF Docker!<h1>")
pdf.SaveAs("ironpdf.pdf")