Chrome Renderer nie uruchamia się na zimno w Azure App Service Linux
Ten problem występuje w Azure App Service Linux, gdy podstawowy obraz bazowy Oryx/Ubuntu jest aktualizowany przez Azure, usuwając biblioteki współdzielone, od których zależy renderer Chrome IronPDF. Podczas następnego zimnego startu, IronPDF musi zainstalować ponownie od nowa te natywne zależności Chrome, co może zająć do 5 minut. Jeśli limit czasu uruchamiania aplikacji jest zbyt krótki, instalacja zostaje przerwana, a renderer ulega awarii.
Błąd zazwyczaj pojawia się jako:
libnss3.so: cannot open shared object file: No such file or directory
Azure okresowo aktualizuje obraz bazowy używany przez środowiska App Service Linux. Te aktualizacje mogą usuwać biblioteki współdzielone takie jak libnss3.so, których wymaga Chrome. Gdy tak się dzieje, mechanizm LinuxAndDockerDependenciesAutoConfig IronPDF próbuje ponownie zainstalować wymagane pakiety podczas uruchamiania. Jeśli limit czasu usługi jest krótszy niż czas potrzebny do ukończenia tej instalacji, proces zostaje przerwany, zanim Chrome będzie gotowy.
Ten problem został potwierdzony w następującym środowisku:
- Dotknięta wersja: IronPDF 2026.4.1
- Niedotknięta wersja: IronPDF 2026.5.2
- Hosting: Azure App Service plan P0v3, region Norwegia Wschód
- Runtime: .NET 10
Rozwiązanie
Rozwiązanie 1: Zastosowanie ustawień inicjalizacji i zwiększenie czasu uruchamiania
Dodaj poniższy kod inicjalizacji na początku uruchamiania aplikacji, przed wywołaniem renderowania PDF:
Logger.LoggingMode = Logger.LoggingModes.All;
Installation.LinuxAndDockerDependenciesAutoConfig = true;
Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
Installation.Initialize();
Logger.LoggingMode = Logger.LoggingModes.All;
Installation.LinuxAndDockerDependenciesAutoConfig = true;
Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
Installation.Initialize();
Option Strict On
Logger.LoggingMode = Logger.LoggingModes.All
Installation.LinuxAndDockerDependenciesAutoConfig = True
Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled
Installation.Initialize()
Ustawienie LinuxAndDockerDependenciesAutoConfig na true mówi IronPDF, aby wykrywał i automatycznie instalował brakujące zależności Linux. Ustawienie ChromeGpuMode na IronPdf.Engines.Chrome.ChromeGpuModes.Disabled wyłącza akcelerację GPU, która nie jest dostępna w środowiskach Azure App Service Linux. Włączenie pełnego logowania pomaga wychwycić wszelkie błędy podczas instalacji zależności.
Następnie zwiększ limit czasu uruchamiania Azure App Service do co najmniej 10 minut. To daje IronPDF wystarczająco dużo czasu na dokończenie ponownej instalacji zależności podczas zimnego startu po aktualizacji podstawowego obrazu Azure. Zobacz przewodnik dotyczący wdrażania na Azure w celu uzyskania instrukcji dotyczących zmiany ustawienia limitu czasu uruchamiania w konfiguracji App Service.
Rozwiązanie 2: Aktualizacja do IronPDF 2026.5.2 lub nowszej
Aktualizacja do IronPDF 2026.5.2 lub nowszej wersji rozwiązuje ten problem. Niedotknięta wersja obsługuje przypadek, gdy aktualizacje obrazu bazowego Azure usuwają biblioteki współdzielone, nie powodując awarii zimnego startu.

