Hi,
I am trying to use Puppeteer in a webservice, but I keep getting this error:
PDF Generation Error: Error: Failed to launch the browser process! spawn /usr/bin/chromium ENOENT
I am launching it like this:
…
import puppeteer from ‘puppeteer-core’;
…
app.post(‘/generate-pdf’, async (req, res) => {
console.log(‘PDF generation request received’);
let browser = null;
try {
const { url, filename } = req.body;
if (!url) {
console.log('No URL provided');
return res.status(400).json({ error: 'URL is required' });
}
console.log(`Launching browser to capture: ${url}...`);
browser = await puppeteer.launch({
headless: true,
executablePath: process.env.PUPPETEER_EXECUTABLE_PATH || '/usr/bin/chromium',
args: [
'--no-sandbox',
'--disable-setuid-sandbox',
'--disable-dev-shm-usage',
'--single-process',
'--disable-gpu',
'--font-render-hinting=none'
]
});
And this is my package.json:
{
“name”: “pdf-generation-service”,
“version”: “1.0.0”,
“description”: “CV PDF generation service”,
“main”: “generate-pdf.js”,
“type”: “module”,
“scripts”: {
“start”: “node renderservice.js”,
“build”: “chmod +x render-build.sh && ./render-build.sh”
},
“dependencies”: {
“cors”: “^2.8.5”,
“express”: “^4.18.2”,
“puppeteer-core”: “^21.5.0”
},
“engines”: {
“node”: “18.x”
}
}
I tried a lot of things, the latest one being the one described here:
in : …/9848/2
Any idea what can be going on?
Tahnks!
Jorge