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
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.

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.