【问题标题】:How do I set an environment variable for airflow to use?如何设置供气流使用的环境变量?
【发布时间】:2017-07-07 22:37:27
【问题描述】:

Airflow 在尝试运行 DAG 时返回错误,说它找不到环境变量,这很奇怪,因为它能够找到我存储为 Python 变量的 3 个其他环境变量。这些变量完全没有问题。

我在~/.profile 中拥有所有 4 个变量并且也完成了

export var1="varirable1"
export var2="varirable2"
export var3="varirable3"
export var4="varirable4"

airflow 在什么用户下运行?我也在sudo 下完成了那些export 命令,所以我认为它们会在运行dag 时被airflow 拾取

【问题讨论】:

  • 您能否通过运行气流的服务器中的普通 shell 访问第四个变量?
  • 如果您在~/.profile 文件中添加变量,您可能需要重新启动您的PC。否则,最好在@Breathe 提到的~/.bashrc 中设置变量。

标签: python environment-variables airflow apache-airflow


【解决方案1】:

根据this answer,变量应该放在/etc/default/airflow(在Debian/Ubuntu上)或/etc/sysconfig/airflow(在Centos/Redhat上)。

【讨论】:

    【解决方案2】:

    可能是因为气流使用非登录外壳?您是否尝试过将这些行放入: ~/.bashrc 而不是 ~/.profile ?

    【讨论】:

      【解决方案3】:

      如果你只是运行一个本地实例,你应该能够像你期望的那样使用环境变量。请记住,您需要在运行 Web 服务器和调度程序的 shell 中设置它们。如果这些在您的.profile 中,您可能需要运行source ~/.profile

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-07-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-04
        • 2015-10-24
        • 2012-11-22
        • 2019-08-24
        相关资源
        最近更新 更多