Comment exécuter IronPDF for Java dans Google Cloud ?

This article was translated from English: Does it need improvement?
Translated
View the article in English

Remarque : Nous n'avons pas entièrement testé la compatibilité avec Google Cloud, mais si vous souhaitez essayer, nous avons quelques Paramètres requis.

Important : Paramètres requis

  • Le déploiement Zip n'est pas pris en charge, car IronPDF nécessite l'exécution des binaires au moment de l'exécution.
  • Les images Docker par défaut des fonctions Cloud ne fonctionnent pas car elles ne contiennent pas les packages nécessaires au bon fonctionnement de Chrome. Pour plus d'informations, consultez les Google Cloud System Packages.
  • Veuillez utiliser un fichier Docker personnalisé et installer tous les paquets nécessaires. En savoir plus à ce sujet dans notre Guide de déploiement Linux.
  • Incluez la dépendance ironpdf-engine-linux-x64 dans votre projet : (changez le numéro de version pour le plus récent)
    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf-engine-linux-x64</artifactId>
        <version>2022.xx.x</version>
    </dependency>
    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf-engine-linux-x64</artifactId>
        <version>2022.xx.x</version>
    </dependency>
XML
  • Ce plugin peut être requis :
    <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>
    <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>
XML
  • Ces dépendances peuvent être requises :
    <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>
    <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>
XML
  • Configurez timeout sur 330 secondes en raison d'un démarrage lent.
  • Définissez la taille de la mémoire à au moins 2048 Mo.
  • Définissez la taille de stockage éphémère à au moins 1024 Mo.
  • Dans certains environnements, vous devrez peut-être pointer vers un IronPdfEngineWorkingDirectory et définir les autorisations d'exécution pour celui-ci :
    Setting.setIronPdfEngineWorkingDirectory(Paths.get("/tmp/"));
    Setting.setIronPdfEngineWorkingDirectory(Paths.get("/tmp/"));
JAVA
    RUN chmod 777 /tmp/