# 设置配置选项

> 贡献者：[@ImPerat0R\_](https://github.com/tssujt)

第一次运行 Airflow 时，它会在`$AIRFLOW_HOME`目录中创建一个名为`airflow.cfg`的文件（默认情况下为`~/airflow`）。此文件包含 Airflow 的配置，您可以对其进行编辑以更改任何设置。您还可以使用以下格式设置带有环境变量的选项： `$AIRFLOW__{SECTION}__{KEY}` （注意使用双下划线）。

例如，元数据库连接字符串可以在`airflow.cfg`设置，如下所示：

```py
[core]
sql_alchemy_conn = my_conn_string
```

或者通过创建相应的环境变量：

```py
AIRFLOW__CORE__SQL_ALCHEMY_CONN = my_conn_string
```

您还可以通过将`_cmd`附加到键来在运行时派生连接字符串，如下所示：

```py
[core]
sql_alchemy_conn_cmd = bash_command_to_run
```

下列配置选项支持这种`_cmd`配置办法
 - `[core]`部分中的`sql_alchemy_conn`
 - `[core]`部分中的`fernet_key`
 - `[celery]`部分中的`broker_url`
 - `[celery]`部分中的`result_backend`
 - `[atlas]`部分中的`password`
 - `[smtp]`部分中的`smtp_password`
 - `[ldap]`部分中的`bind_password`
 - `[kubernetes]`部分中的`git_password`

这背后的想法是不将密码存储在纯文本文件的框中。

所有配置选项的优先顺序如下 -

1. 环境变量
2. airflow.cfg 中的配置
3. airflow.cfg 中的命令
4. 默认
