Я развертываю приложение, использующее pdf2image для gcp app engine.Когда я захотел проверить это, я получил ошибку:
pdf2image.exceptions.PDFInfoNotInstalledError: Невозможно получить количество страниц.Установлен ли poppler и в PATH?
Я нашел эту запись и добавил dockerfile в свой проект, вот как это выглядит:
FROM gcr.io/google-appengine/python
# Create a virtualenv for dependencies. This isolates these packages from
# system-level packages.
# Use -p python3 or -p python3.7 to select python version. Default is version 2.
RUN apt-get install poppler-utils
RUN virtualenv -p python3.7 /env
# Setting these environment variables are the same as running
# source /env/bin/activate.
ENV VIRTUAL_ENV /env
ENV PATH /env/bin:$PATH
# Copy the application's requirements.txt and run pip to install all
# dependencies into the virtualenv.
ADD requirements.txt /app/requirements.txt
RUN pip install -r /app/requirements.txt
# Add the application source code.
ADD . /app
# Run a WSGI server to serve the application. gunicorn must be declared as
# a dependency in requirements.txt.
CMD gunicorn -b :$PORT main:app
Я такжеизменил файл app.yaml:
runtime: custom
env: flex
И теперь, когда я пытаюсь развернуть приложение, я получаю:
Шаг 2/9: RUN apt-get install poppler-utils
---> Работа в db1e5bebd0a8
Чтение списков пакетов ...
Построение дерева зависимостей ...
Чтение информации о состоянии ...
E: невозможно найти пакет poppler-utils
Команда '/ bin / sh -c apt-get install poppler-utils' вернула ненулевой код: 100
ОШИБКА
ОШИБКА: сбой шага сборки 0 "gcr.io/cloud-builders/docker": состояние выхода 100
Я также попробовал python-poppler вместо poppler-utils иполучил ту же ошибку.
Я нашел этот пост об установке poppler , и теперь мне интересно, могу ли я сделать это в Dockerfile, я раньше не работал с Docker, это был мойпервый докер-файл.