Behebung von IronPDF-Bereitstellungsproblemen auf Google Cloud Run
IronPDF kann keine PDFs erzeugen oder stürzt ab, wenn es auf Google Cloud Run der 1. Generation bereitgestellt wird. Es sind drei Ausfallmodi häufig:
- Anwendung stürzt ab oder erzeugt Segmentierungsfehler während der PDF-Erstellung
- Abhängigkeitsfehler verursacht durch fehlende Grafikbibliotheken wie
libglib2.0-0,libxkbcommon-x11-0undlibgtk2.0-0 - GPU- oder Renderfehler, wenn die Umgebung keine Unterstützung für die Grafikbeschleunigung hat
Google Cloud Run der 1. Generation verwendet den Linux-Kernel 4.4.0, der nicht die Unterstützung bietet, die der Chrome-basierte Renderer von IronPDF erfordert. Die Umgebung der 2. Generation verwendet Kernel 6.4.10 und behebt diese Kompatibilitätsprobleme.
Lösung
Schritt 1: Wechsel zur Ausführungsumgebung der 2. Generation
Fügen Sie --execution-environment gen2 zu Ihrem Bereitstellungsbefehl hinzu:
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
Schritt 2: Aktualisieren Sie Ihr Dockerfile mit den erforderlichen Abhängigkeiten
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"]
Für die vollständige Liste der benötigten Pakete nach Linux-Distribution, siehe den Linux Bereitstellungsleitfaden.

