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

如何在Azure Web App的Ubuntu 18.04环境中安装Poppler修复运行报错

Ubuntu 18.04 + Azure Web App 环境 poppler 安装解决方案

问题核心说明

Azure App Service 的 Linux 运行环境为无状态容器,手动进入实例安装的依赖会在实例重启、重新部署后消失,必须将 poppler 安装步骤嵌入部署流程中才能永久生效。

具体操作方案

方案1:使用默认 Python 运行时(无自定义Docker)

  1. 在项目根目录新建启动脚本startup.sh,写入以下内容:
#!/bin/bash
# 安装poppler依赖
apt-get update && apt-get install -y poppler-utils
# 替换为你自己的Flask启动命令
gunicorn --bind=0.0.0.0 --timeout 600 app:app
  1. 在 Azure 门户的 Web App 配置页,找到「启动命令」配置项,填写./startup.sh后保存。
  2. 在 Azure DevOps 流水线的部署步骤中,确保startup.sh被同步到应用根目录。

方案2:使用Docker镜像部署

直接在Dockerfile中加入poppler安装步骤,示例如下:

FROM python:3.8-slim-buster
WORKDIR /app
COPY requirements.txt .
# 安装系统依赖poppler-utils,清理缓存缩小镜像体积
RUN apt-get update && apt-get install -y --no-install-recommends poppler-utils \
    && rm -rf /var/lib/apt/lists/* \
    && pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8000
# 替换为你自己的Flask启动命令
CMD ["gunicorn", "--bind=0.0.0.0:8000", "app:app"]

验证与兼容处理

  1. 部署完成后进入 Azure Web App 的 SSH 控制台,执行pdftotext -v确认poppler安装成功。
  2. 若pdf2image仍识别不到poppler,可在代码中手动指定poppler路径:
from pdf2image import convert_from_path
# poppler默认安装路径为/usr/bin
pages = convert_from_path('你的文件路径.pdf', poppler_path='/usr/bin')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 16:06:03