Шаг 3 из 5

Dockerfile

FROM python:3.7.6-slim-buster
RUN apt-get update \
   && apt-get -y install build-essential \
   libpq-dev libssl-dev libffi-dev \
   libxml2-dev libxslt1-dev libssl1.1 \
   postgresql-client
COPY requirements.txt /tmp/
RUN pip install -r /tmp/requirements.txt
RUN mkdir /code
WORKDIR /code
COPY tasks /code/tasks
COPY telegram_notify.py /code
COPY luigi.cfg /code

Вы также можете найти Dockerfile в репозитории с материалами курса. Он максимально простой.

  • В качестве базового образа берём python:3.7.6-slim-buster
  • Обновляем установленные пакеты, и дополнительно устанавливаем набор для компиляции библиотек, написанных на Си
  • Устанавливаем python зависимости для запуска luigi тасков
  • Копируем директорию с задачами в /code, эта директория также является рабочей при запуске команд
  • Копируем вспомогательные файлы:
    • файл конфигурации
    • модуль для отправки нотификаций в телеграм

Чтобы создать Docker-контейнер необходимо зайти в директорию с Dockerfile и выполнить команду:

docker build -t luigi_course .

Комментарии