We upgraded a service from ASP.NET 8 to 10. No application code changed—but our Puppeteer-based document pipeline completely broke.
The root cause wasn’t .NET. It was a subtle base image change:
Debian → Ubuntu , which replaced a working Chromium install with a non-functional Snap wrapper inside Docker.
The Setup
Our document generation pipeline works like this:
Render HTML using Puppeteer
Use Chromium as the headless browser
Post-process assets with Sharp
Run everything inside a Docker container
This setup worked reliably on ASP.NET 8.
What Changed?
As part of the upgrade:
From: mcr.microsoft.com/dotnet/aspnet:8.0 (Debian-based)
To: mcr.microsoft.com/dotnet/aspnet:10.0 (Ubuntu-based)
At first glance, nothing looked risky.…