Skip to content

外部数据存储环境变量#

基于文件的配置

您可以在单个变量后添加 _FILE 以在单独的文件中提供其配置。有关更多详细信息,请参阅在单独文件中保存敏感数据

有关使用外部存储进行二进制数据的更多信息,请参考外部存储

变量 类型 默认值 描述
N8N_EXTERNAL_STORAGE_S3_HOST 字符串 - S3 兼容外部存储中 n8n 存储桶的主机。例如 s3.us-east-1.amazonaws.com
N8N_EXTERNAL_STORAGE_S3_BUCKET_NAME 字符串 - S3 兼容外部存储中 n8n 存储桶的名称。
N8N_EXTERNAL_STORAGE_S3_BUCKET_REGION 字符串 - S3 兼容外部存储中 n8n 存储桶的区域。例如 us-east-1
N8N_EXTERNAL_STORAGE_S3_ACCESS_KEY 字符串 - S3 兼容外部存储中的访问密钥。
N8N_EXTERNAL_STORAGE_S3_ACCESS_SECRET 字符串 - S3 兼容外部存储中的访问密钥 secret。
N8N_EXTERNAL_STORAGE_S3_AUTH_AUTO_DETECT 布尔值 - 使用自动凭据检测对外部存储的 S3 调用进行身份验证。这会忽略访问密钥及其 secret,改用默认凭据提供程序链

Azure Blob Storage#

Enterprise 层级功能

您需要 Enterprise 许可证密钥才能在 Azure Blob Storage 中存储执行数据。

要将执行数据存储在 Azure Blob Storage 中,请将 N8N_EXECUTION_DATA_STORAGE_MODE 设为 azure,并配置以下变量。始终必须设置 N8N_EXTERNAL_STORAGE_AZURE_CONTAINER_NAME

对于身份验证,请选择以下三种方式之一。n8n 按以下顺序检查:

  1. Connection string 连接字符串:设置 N8N_EXTERNAL_STORAGE_AZURE_CONNECTION_STRING。此方式优先于其他方式,因此设置后 n8n 会忽略账户名称、密钥和自动检测。它最简单,适合使用 Azurite 进行本地测试。
  2. Auto-detect 自动检测:设置 N8N_EXTERNAL_STORAGE_AZURE_ACCOUNT_NAME,并将 N8N_EXTERNAL_STORAGE_AZURE_AUTH_AUTO_DETECT 设为 true。n8n 通过 Azure 的 DefaultAzureCredential 链(托管身份、环境或 Azure CLI)进行身份验证,因此 n8n 配置中不必保存密钥。最适合 Azure 上的生产环境。
  3. Account name and key 账户名称和密钥:设置 N8N_EXTERNAL_STORAGE_AZURE_ACCOUNT_NAMEN8N_EXTERNAL_STORAGE_AZURE_ACCOUNT_KEY

仅当使用 Azurite 或主权云等自定义端点时,才设置 N8N_EXTERNAL_STORAGE_AZURE_ENDPOINT

变量 类型 默认值 描述
N8N_EXTERNAL_STORAGE_AZURE_CONNECTION_STRING 字符串 - Azure Blob Storage 的连接字符串。设置后优先于账户名称和密钥。
N8N_EXTERNAL_STORAGE_AZURE_ACCOUNT_NAME 字符串 - 存储账户名称。与账户密钥或托管身份配合使用。
N8N_EXTERNAL_STORAGE_AZURE_ACCOUNT_KEY 字符串 - 存储账户密钥。与账户名称配合使用。
N8N_EXTERNAL_STORAGE_AZURE_CONTAINER_NAME 字符串 - 用于存储执行数据的 blob 容器名称。Azure Blob Storage 必填。
N8N_EXTERNAL_STORAGE_AZURE_ENDPOINT 字符串 - 自定义 blob 端点,例如 Azurite 或主权云的端点。
N8N_EXTERNAL_STORAGE_AZURE_AUTH_AUTO_DETECT 布尔值 false 通过 DefaultAzureCredential(托管身份、环境或 Azure CLI)进行身份验证,而不是使用账户密钥。启用后会忽略账户密钥。