在 Lambda 的 AWS 基础 python 映像中安装 poppler
Install poppler in AWS base python image for Lambda
我正在尝试在 AWS Lambda 上部署我的 docker 容器。但是,我在依赖于 poppler
的代码中使用 pdf2image
包。要安装 poppler
,我需要在 Dockerfile 中插入以下行。
RUN apt-get install -y poppler-utils
这是 docker 文件的完整视图。
FROM ubuntu:18.04
RUN apt-get update
RUN apt-get install -y poppler-utils
RUN apt-get install python3 -y
RUN apt-get install python3-pip -y
RUN pip3 install --upgrade pip
WORKDIR /
COPY app.py .
COPY requirements.txt .
RUN pip3 install -r requirements.txt
ENTRYPOINT [ "python3", "app.py" ]
但是,要在 Lambda 上部署,我需要为 Lambda 使用 AWS 基础 python 映像。这是我重写上述 docker 文件以使用 Lambda 基础映像的尝试。
FROM public.ecr.aws/lambda/python:3.6
# Cannot run the follow lines: apt-get: command not found
# RUN apt-get update
# RUN apt-get install -y poppler-utils
COPY app.py .
COPY requirements.txt .
RUN pip install -r requirements.txt
CMD ["app.handler"]
根据上面的docker文件可以看出apt-get命令不能运行。可以理解,因为它不像我之前那样来自 ubuntu 图片。我的问题是,如何在 Lambda 基础映像中安装 poppler
?
它使用 yum 包管理器,因此您可以改为执行以下操作:
FROM public.ecr.aws/lambda/python:3.6
RUN yum install -y poppler-utils
我正在尝试在 AWS Lambda 上部署我的 docker 容器。但是,我在依赖于 poppler
的代码中使用 pdf2image
包。要安装 poppler
,我需要在 Dockerfile 中插入以下行。
RUN apt-get install -y poppler-utils
这是 docker 文件的完整视图。
FROM ubuntu:18.04
RUN apt-get update
RUN apt-get install -y poppler-utils
RUN apt-get install python3 -y
RUN apt-get install python3-pip -y
RUN pip3 install --upgrade pip
WORKDIR /
COPY app.py .
COPY requirements.txt .
RUN pip3 install -r requirements.txt
ENTRYPOINT [ "python3", "app.py" ]
但是,要在 Lambda 上部署,我需要为 Lambda 使用 AWS 基础 python 映像。这是我重写上述 docker 文件以使用 Lambda 基础映像的尝试。
FROM public.ecr.aws/lambda/python:3.6
# Cannot run the follow lines: apt-get: command not found
# RUN apt-get update
# RUN apt-get install -y poppler-utils
COPY app.py .
COPY requirements.txt .
RUN pip install -r requirements.txt
CMD ["app.handler"]
根据上面的docker文件可以看出apt-get命令不能运行。可以理解,因为它不像我之前那样来自 ubuntu 图片。我的问题是,如何在 Lambda 基础映像中安装 poppler
?
它使用 yum 包管理器,因此您可以改为执行以下操作:
FROM public.ecr.aws/lambda/python:3.6
RUN yum install -y poppler-utils