airflow - 如何加载新的 Airflow 配置?
问题描述
我将 Airflow 用于我的 ETL,现在我想donot_pickle=True
在我的 Airflow 配置中进行一些更改 ( )。如何加载新配置?使用:
docker-compose up -d --force-recreate --build
只需更新容器配置。我是否被迫重新创建整个事情?
解决方案
我假设您使用的是 puckel 的 docker-compose 部署 ( https://github.com/puckel/docker-airflow ),因为它是最受欢迎的部署,而您没有指定任何内容。
您可以在 docker -compose.yml文件中指定的每个服务上共享任何气流配置变量,例如AIRFLOW__CORE__DONOT_PICKLE作为环境变量。
让我们看看 celery-executor 版本的调度器服务是如何实现的,例如:
scheduler:
...
environment:
- LOAD_EX=n
- EXECUTOR=Celery
- AIRFLOW__CORE__DONOT_PICKLE=True
- ...
...
您在其中指定的每个环境值都将在下次重新启动相应的 docker 容器时可供服务使用。