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

Docker构建Puppeteer时报错:找不到puppeteer-latest.tgz文件

Docker构建Puppeteer时COPY puppeteer-latest.tgz失败的解决办法

问题原因

官方提供的Dockerfile是针对Puppeteer项目内部发布流程编写的,puppeteer-latest.tgz是项目构建阶段生成的npm包归档文件。如果直接单独使用该Dockerfile,本地没有提前生成这个文件,就会触发"文件未找到"的缓存键计算错误。

解决办法

  • 方法一:遵循项目原生流程生成包后构建

    1. 克隆Puppeteer仓库到本地:git clone https://github.com/puppeteer/puppeteer.git
    2. 进入仓库目录:cd puppeteer
    3. 生成归档包:npm pack(执行后会在当前目录生成类似puppeteer-XX.X.X.tgz的文件,手动重命名为puppeteer-latest.tgz)
    4. 执行镜像构建:docker build -f docker/Dockerfile .
  • 方法二:修改Dockerfile,直接从npm安装Puppeteer
    无需依赖本地tgz包,将原Dockerfile中的以下两段代码:

    COPY puppeteer-latest.tgz /home/pptruser/puppeteer-latest.tgz
    RUN npm install --no-save /home/pptruser/puppeteer-latest.tgz
    

    替换为:

    RUN npm install --no-save puppeteer
    

    这样Docker会直接从npm仓库拉取最新版Puppeteer,跳过本地包的依赖。

  • 方法三:确保构建上下文包含目标文件
    如果坚持使用本地tgz包,执行docker build时,必须保证puppeteer-latest.tgz在当前执行目录(Docker构建上下文)中;或者调整COPY指令的源路径为文件实际所在的绝对/相对路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 07:15:41