Correction des problèmes de déploiement d'IronPDF sur Google Cloud Run

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

IronPDF échoue à générer des PDF ou plante lorsqu'il est déployé sur Google Cloud Run 1st Generation. Trois modes d'échec sont courants :

  • L'application plante ou produit des erreurs de segmentation lors de la génération de PDF
  • Échecs de dépendances causés par l'absence de bibliothèques graphiques telles que libglib2.0-0, libxkbcommon-x11-0, et libgtk2.0-0
  • Erreurs de GPU ou de rendu lorsque l'environnement manque de support d'accélération graphique

Google Cloud Run 1st Generation utilise le noyau Linux 4.4.0, qui manque le support requis par le moteur de rendu basé sur Chrome d'IronPDF. L'environnement 2nd Generation utilise le noyau 6.4.10 et résout ces problèmes de compatibilité.

Solution

Étape 1 : Passez à l'environnement d'exécution 2nd Generation

Ajoutez --execution-environment gen2 à votre commande de déploiement :

gcloud run deploy my-ironpdf-service \
    --image gcr.io/my-project/my-ironpdf-app \
    --platform managed \
    --region us-central1 \
    --execution-environment gen2 \
    --allow-unauthenticated
gcloud run deploy my-ironpdf-service \
    --image gcr.io/my-project/my-ironpdf-app \
    --platform managed \
    --region us-central1 \
    --execution-environment gen2 \
    --allow-unauthenticated
SHELL

Étape 2 : Mettez à jour votre Dockerfile avec les dépendances requises

FROM --platform=linux/amd64 mcr.microsoft.com/dotnet/aspnet:8.0 AS base
USER root
WORKDIR /app
EXPOSE 8080

RUN apt update && apt install -y \
    sudo libglib2.0-0 libxkbcommon-x11-0 libc6 libc6-dev \
    libgtk2.0-0 libnss3 libatk-bridge2.0-0 libx11-xcb1 \
    libxcb-dri3-0 libdrm-common libgbm1 libasound2 \
    libxrender1 libfontconfig1 libxshmfence1 libgdiplus libva-dev \
    libstdc++6 libxcomposite1 \
    && rm -rf /var/lib/apt/lists/*

COPY . .
RUN dotnet publish -c Release -o /app/publish

CMD ["dotnet", "/app/publish/myapp.dll"]

Pour la liste complète des packages requis par distribution Linux, voir le guide de déploiement Linux.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer ?
Nuget Téléchargements 20,088,359 | Version : 2026.7 vient de sortir
Still Scrolling Icon

Vous faites encore défiler ?

Vous voulez une preuve rapidement ? PM > Install-Package IronPdf
exécuter un échantillon Regardez votre code HTML se transformer en PDF.