气流任务是根据容器时间还是系统时间来调度?

问题描述 投票:0回答:1

我正在本地计算机上的 Docker 容器中运行气流

  • 如果我打开终端并且
    date
    它会返回 Wed Nov 22 18:36:44 EST 2023
  • 如果我执行 docker exec 并在容器内运行
    date
    ,它将返回 Wed 22 Nov 2023 11:36:44 PM UTC

当我们在 DAG 中定义时间时,就像:

with DAG("forex_data_pipeline", start_date=datetime(2024, 1 ,1), 
    schedule_interval="@daily", catchup=False) as dag:
.
.
.

是基于UTC时间还是EST时间?

docker time airflow
1个回答
0
投票

首先,我强烈建议您阅读有关时区的气流文档

您提供的start_date非常重要。

任务的开始日期,确定第一个任务实例的执行日期。

请注意,Airflow 只是查看最新的execution_date 并添加schedule_interval 来确定下一个execution_date

在 Python 中,当您使用

datetime
而不显式设置其 datetime.tzinfo 时,基于时间是 UTC。

datetime 模块提供 timezone,这是 tzinfo 的一个简单具体子类,它可以表示与 UTC 具有固定偏移量的时区,例如 UTC 本身或北美东部时间和东部夏令时间。

© www.soinside.com 2019 - 2024. All rights reserved.