You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Heroku部署Node.js+Puppeteer应用时遇「找不到Chromium」错误求助

解决Heroku部署Puppeteer应用时的“Could not find Chromium”错误
  • 确认buildpack顺序与正确性
    确保先添加Puppeteer专用buildpack,再添加Node.js buildpack,执行以下命令:

    heroku buildpacks:add --index 1 https://github.com/jontewks/puppeteer-heroku-buildpack
    heroku buildpacks:add --index 2 heroku/nodejs
    
  • 手动指定Chromium执行路径
    在Puppeteer启动配置中添加executablePath,同时补充避免内存问题的启动参数:

    const browser = await puppeteer.launch({
        headless: true,
        args: [
            '--no-sandbox',
            '--disable-setuid-sandbox',
            '--disable-dev-shm-usage' // 解决Heroku临时内存不足问题
        ],
        executablePath: process.env.CHROME_BIN || puppeteer.executablePath()
    });
    

    同时通过Heroku设置环境变量:

    heroku config:set CHROME_BIN=/app/.apt/usr/bin/chromium-browser
    
  • 匹配Puppeteer版本与buildpack兼容性
    部分新版本Puppeteer与旧buildpack存在兼容问题,可尝试降级到稳定版本:

    npm install puppeteer@19.11.1 --save
    
  • 清理Heroku缓存后重新部署
    旧缓存可能导致依赖残留,执行缓存清理后重新推送代码:

    heroku builds:cache:purge
    git push heroku main
    
  • 检查Puppeteer依赖位置
    确保puppeteer在package.json的dependencies字段中,而非devDependencies,Heroku生产环境不会安装开发依赖。

内容的提问来源于stack exchange,提问作者0xSandwich

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 15:10:25