[英]NodeJs + Puppeteer on Azure App Services fails to run
我編寫了一個簡單的NodeJs
(ExpressJs) 服務器,它使用Puppeteer
在傳遞給它的 JSON 數據上生成 PDF 個文件。 雖然在本地一切正常,但我正在努力在Azure App Services
上運行此服務器。 我創建了一個Resource group
,在其中我創建了一個App Servces instance
(在Linux
上運行),該實例連接到我在Azure DevOps
的存儲庫(通過Deployment Center
)。
我的服務器有兩個端點:
Puppeteer
生成並返回一個 PDF 文件。 成功啟動App Service instance
后,我能夠訪問“/”路由並獲得有效響應,但在訪問“/generate-pdf”路由時,結果是“502 - Bad Gateway”。
App Services
不能運行Puppeteer
嗎? 也許我需要使用 Azure 上的其他服務?Azure DevOps
管道或發布來自動化該過程?任何問題/想法/常見問題解答都非常受歡迎。 謝謝 =)
我正在回答我自己的問題:正如此處提到的https://stackoverflow.com... Azure 應用服務不允許使用 GDI(Chrome 需要),無論您使用的是 Linux 還是基於 Windows系統。 解決方案是將 NodeJs 應用程序放入 Docker 容器並手動安裝 Chrome。 擁有容器后 - 只需將其上傳到 Azure App Services 和 viola!
M1 Pro
上構建了 Docker 圖像,當容器上傳到 Azure 時它導致了一些拱形問題。如果您正在為 Linux 構建圖像,請務必在圖像構建步驟中添加--platform linux/amd64
.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.