Docker中部署puppeteer導出pdf


 

 

 

 

最近在做puppeteer容器化的過程中發現問題。

  1. 在容器中npm install puppeteer仍然會報錯,不能launch

隨后錯誤提示中也給出了官方的文檔,https://github.com/GoogleChrome/puppeteer/blob/master/docs/troubleshooting.md

翻閱了官方問題后,發現官方其實提供了puppeteer的docker化解決方案,即https://github.com/GoogleChrome/puppeteer/blob/master/docs/troubleshooting.md#running-on-alpine

不過該鏡像制作如果網速不好,時間會很長,所以我制作了個基礎鏡像 shadow88sky/chrmoe:v1。 下次容器化代碼的時候可以用此鏡像。例如:

注意,要加上紅色框出的即可,因為解決方案中是要有pptruser這個用戶權限的。

這樣就完成了整個docker容器話的工作。

    2.導出的pdf文件內容出現亂碼

原因是官方解決方案中基礎鏡像中沒有中文字體導致。

大家可以下載字體,在容器啟動的時候,已volume掛載的方式,將字體掛載到容器的/usr/share/fonts目錄

例如:   -v /Users/chenxu/Desktop/fonts:/usr/share/fonts

:前面是宿主機的工作目錄,后面是容器的字體目錄。

宿主目錄里面如上圖所示,包含宋體。 這樣就解決了pdf導出 中文亂碼的問題啦。

當然,大家也可直接修改鏡像,直接安裝中文字體即可


免責聲明!

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



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