而未设置PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true和CHROMIUM_PATH / usr / bin / chromium-browser
无 Chrome 包装
Error for printPdf()
Error: Failed to launch chrome! spawn /usr/src/app/node_modules/puppeteer/.local-chromium/linux-706915/chrome-linux/chrome ENOENT
设置为PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true和CHROMIUM_PATH / usr / bin / chromium-browser
带 Chrome 包装
以下是我的Dockerfile:
FROM alpine:latest
WORKDIR /usr/src/app
RUN chmod -R 444 /etc/apk/
RUN echo "ipv6" >> /etc/modules
RUN set -x \
&& apk update \
&& apk upgrade \
RUN apk add -f
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true
ENV CHROMIUM_PATH /usr/bin/chromium-browser
# Installs latest Chromium package.
RUN apk add --no-cache \
chromium \ ### with this, it is okay
nss \
freetype \
freetype-dev \
harfbuzz \
ca-certificates \
ttf-freefont \
nodejs \
npm \
yarn
RUN yarn add puppeteer@2.0.0 adal-node@0.2.0 azure-keyvault@3.0.4 azure-sb@0.11.1 azure-storage@2.10.3 http@0.0.0
COPY package*.json ./
EXPOSE 3000
CMD [ "npm", "start"]
以下是我的puppeteer.js:
browser = await puppeteer.launch({
executablePath: '/usr/bin/chromium-browser', // if without using chromium package: executablePath: process.env.CHROMIUM_PATH,
args: ['--no-sandbox', '--enable-font-antialiasing', '--font-render-hinting=medium'],
timeout: LOAD_TIMEOUT,
headless: true
});
引用:GoogleChrome/puppeteer
最佳答案
只需将headless
的值设置为false
browser = await puppeteer.launch({
headless: true
});
关于node.js - Docker NodeJS Puppeteer@2.0.0-如何修复无法启动Chrome!问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58746052/