Python Скрипт с Cronjob в Docker Контейнер не может найти модули - PullRequest
0 голосов
/ 17 апреля 2020

Если я запускаю pythonscript в своем контейнере, он запускается без каких-либо проблем. Но когда я запускаю его как cronjob, он выдает ошибку, что он не нашел модуля. У тебя есть идеи почему?

dockerfile

FROM python:3.5.2

RUN apt-get update \
    && apt-get install -y cron \
    && apt-get autoremove -y

RUN pip install --upgrade pip && \
    pip install --no-cache-dir image pytesseract numpy XlsxWriter pandas requests && \
    pip install --no-cache-dir med2image datetime IPython matplotlib

# Create a volume
VOLUME /logSent

# Copy Scriptfile
COPY script.py ./script.py

# Copy cron file to the cron.d directory
COPY cronpy /etc/cron.d/cronpy
# Give execution rights on the cron job
RUN chmod 0644 /etc/cron.d/cronpy
# Apply cron job
RUN crontab /etc/cron.d/cronpy

CMD ["cron", "-f"]

cronpy

*/10 * * * * python /script.py > /proc/1/fd/1 2>/proc/1/fd/2
# Empty line

Ответы [ 2 ]

0 голосов
/ 22 апреля 2020

хорошо, когда я использую ubuntu-образ и сам устанавливаю python, а не python -изображение, оно работает правильно.

0 голосов
/ 17 апреля 2020

Попробуйте использовать абсолютный путь для python в cronpy, например,

*/10 * * * * /usr/bin/python /script.py > /proc/1/fd/1 2>/proc/1/fd/2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...