Изолируйте зависимости кода в dag с помощью контейнера - airflow - PullRequest
1 голос
/ 07 мая 2020

Я пытаюсь использовать apache-airflow, и я хотел бы изучить Docker для запуска задачи в контейнере.

Моя текущая установка воздушного потока находится в выделенном виртуальном режиме, и воздушный поток автоматически перезапускается с помощью systemd .

У меня уже есть несколько проектов, которыми я хочу заняться Airflow. У каждого проекта должен быть свой даг. Я хотел бы, чтобы dag проекта был написан с помощью PythonOperator и запускался внутри контейнера docker с изображением, которое я ранее создал со всеми правильными зависимостями.

Это может гарантировать, что зависимости кода будут изолированы между каждым проектом.

Возможно ли это каким-то образом?

1 Ответ

1 голос
/ 07 мая 2020

Есть DockerOperator: https://airflow.apache.org/docs/stable/_api/airflow/operators/docker_operator/index.html

А также PythonVirtualEnvironmentOperator: https://airflow.apache.org/docs/stable/_api/airflow/operators/python_operator/index.html#airflow .operators.python_operator.PythonVirtualenvOperator

В любом случае, в PythonOperator вы можете кодировать все, что хотите, поэтому вы можете создать там новую виртуальную среду, установить зависимости и построить docker образ

...