Puppeteer在docker下踩坑記錄


最近有需求要進行瀏覽器截圖,就開始研究Puppeteer。因為項目是k8s的所有還是遇到了一些坑來做記錄。

1.依賴

基礎鏡像缺少Chromium所需要的依賴,所有導致運行報錯。

centos安裝依賴

yum install pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 libXext.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64 libXrandr.x86_64 GConf2.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 ipa-gothic-fonts xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-utils xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc -y

alpine安裝依賴

# 設置阿里鏡像源
echo "https://mirrors.aliyun.com/alpine/edge/main" > /etc/apk/repositories
echo "https://mirrors.aliyun.com/alpine/edge/community" >> /etc/apk/repositories
echo "https://mirrors.aliyun.com/alpine/edge/testing" >> /etc/apk/repositories

# 安裝Chromium及依賴,包括中文字體支持
apk -U --no-cache update
apk -U --no-cache --allow-untrusted add zlib-dev xorg-server dbus ttf-freefont chromium wqy-zenhei@edge -f

  

2.時區問題

容器的時區一定要設置好,不然Chrome瀏覽器的時區也會跟着出問題。

因為暫時不太清楚怎么在Puppeteer中對Chrome設置時區,所有只能先在dockerfile中加入如下內容:

RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone

 

參考文章 https://www.jianshu.com/p/6a07fbd5b299


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM