Cómo ejecutar IronPDF for Java en Google Cloud
Nota: No hemos probado completamente la compatibilidad con Google Cloud, pero si quieres probar, tenemos algunas Ajustes necesarios
.
Importante: Ajustes necesarios
- No se admite la implementación Zip, ya que IronPDF requiere la ejecución de binarios en tiempo de ejecución.
- Las imágenes Docker predeterminadas de Cloud Function no funcionan porque carecen de los paquetes necesarios para que Chrome se ejecute correctamente. https://cloud.google.com/functions/docs/reference/system-packages
- Utilice un archivo Docker personalizado e instale todos los paquetes necesarios. Más información aquí: https://ironpdf.com/how-to/linux/
- Incluya la dependencia
ironpdf-engine-linux-x64
en su proyecto: (cambiar el número de versión a la última)
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-linux-x64</artifactId>
<version>2022.xx.x</version>
</dependency>
- Este plugin puede ser necesario:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<!-- required for Docker-->
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
- Estas dependencias pueden ser necesarias:
<dependency>
<groupId>io.perfmark</groupId>
<artifactId>perfmark-api</artifactId>
<version>0.26.0</version>
</dependency>
<dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-okhttp</artifactId>
<version>1.50.2</version>
</dependency>
<dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-netty-shaded</artifactId>
<version>1.50.2</version>
</dependency>
- Establecer
timeout
a330 segundos
debido a un inicio lento. - Ajuste el
tamaño de la memoria
a un mínimo de2048 MB
. - Establezca
EphemeralStorage Size
en al menos1024 MB
. - En algunos entornos, puede que necesites apuntar a un
IronPdfEngineWorkingDirectory
y establecer permisos de ejecución para él:
Setting.setIronPdfEngineWorkingDirectory(Paths.get("/tmp/"));
RUN chmod 777 /tmp/