Я использую воздушный поток Puckle docker ( github link ) с docker -compose-LocalExecutor. Проект развертывается через CI / CD на экземпляре EC2, поэтому мой поток данных не запускается на постоянном сервере. ( Каждый пу sh на мастере запускается после sh). Я знаю, что теряю некоторые замечательные функции, но в моей настройке все настроено с помощью bash сценария и / или переменных среды. Моя настройка аналогична настройке этого ответа: Подобный ответ настройки
Я использую версию 1.10.6 , поэтому старый метод добавления config/__init__.py
и config/log_class.py
больше не нужен.
Изменения, которые я внес в исходный код репозитория:
Я добавил некоторые переменные окружения и изменил режим сборки на docker-compose -f docker-compose-LocalExecutor
на запись / сохранение журналов на S3 и сборка из локального Dockerfile:
webserver:
build: .
environment:
- AIRFLOW__CORE__REMOTE_LOGGING=True
- AIRFLOW__CORE__REMOTE_LOG_CONN_ID=aws_default
- AIRFLOW__CORE__REMOTE_BASE_LOG_FOLDER=s3://path/to/logs
- AIRFLOW_CONN_AWS_DEFAULT=s3://key:password
Я изменил Dockerfile
на строку 59 для установки плагина s3, как показано ниже:
&& pip install apache-airflow[s3,crypto,celery,password,postgres,hive,jdbc,mysql,ssh${AIRFLOW_DEPS:+,}${AIRFLOW_DEPS}]==${AIRFLOW_VERSION} \
Эти конфигурации работают нормально, журналы пишутся и успешно считываются с S3, как показано ниже:
Моя проблема:
Если я запускаю docker-compose down
и docker-compose up
, пользовательский интерфейс отображается так, как никогда не запускались даг (пользовательский интерфейс не будет загружать удаленные журналы даг ):