Environment Variables
说明:学习如何为Flowise配置环境变量
环境变量
Flowise支持使用不同的环境变量来配置您的实例。您可以在packages/server文件夹中的.env文件中指定以下变量。请参阅.env.example文件。
PORT
Flowise运行的HTTP端口
Number
3000
FLOWISE_FILE_SIZE_LIMIT
上传时的最大文件大小
String
50mb
NUMBER_OF_PROXIES
速率限制代理
Number
CORS_ORIGINS
所有跨域HTTP调用允许的来源
String
IFRAME_ORIGINS
iframe src嵌入允许的来源
String
SHOW_COMMUNITY_NODES
显示社区创建的节点
Boolean: true 或 false
DISABLED_NODES
以逗号分隔的禁用节点名称列表
String
对于数据库
DATABASE_TYPE
用于存储flowise数据的数据库类型
枚举字符串:sqlite、mysql、postgres
sqlite
DATABASE_PATH
数据库保存位置(当DATABASE_TYPE为sqlite时)
字符串
your-home-dir/.flowise
DATABASE_HOST
主机URL或IP地址(当DATABASE_TYPE不为sqlite时)
字符串
DATABASE_PORT
数据库端口(当DATABASE_TYPE不为sqlite时)
字符串
DATABASE_USER
数据库用户名(当DATABASE_TYPE不为sqlite时)
字符串
DATABASE_PASSWORD
数据库密码(当DATABASE_TYPE不为sqlite时)
字符串
DATABASE_NAME
数据库名称(当DATABASE_TYPE不为sqlite时)
字符串
DATABASE_SSL
数据库SSL是必需的(当DATABASE_TYPE不是sqlite时)
布尔值:true或false
false
存储
Flowise默认将以下文件存储在本地路径文件夹下。
文件已上传至文档加载器/文档存储
从聊天中上传图片/音频
来自助手(或智能助手)的图片/文件
用户可以指定STORAGE_TYPE来使用AWS S3、Google Cloud Storage或本地路径
STORAGE_TYPE
上传文件的存储类型。默认值为local
枚举字符串:s3、gcs、local
local
BLOB_STORAGE_PATH
当STORAGE_TYPE为local时,上传文件存储的本地文件夹路径
字符串
your-home-dir/.flowise/storage
S3_STORAGE_BUCKET_NAME
当STORAGE_TYPE为s3时,用于存放上传文件的存储桶名称
字符串
S3_STORAGE_ACCESS_KEY_ID
AWS 访问密钥
字符串
S3_STORAGE_SECRET_ACCESS_KEY
AWS 存储访问密钥
字符串
S3_STORAGE_REGION
S3存储桶所在区域
字符串
S3_ENDPOINT_URL
自定义S3端点(可选)
字符串
S3_FORCE_PATH_STYLE
S3力路径样式(可选)
布尔值
false
GOOGLE_CLOUD_STORAGE_CREDENTIAL
Google Cloud 服务账户密钥
字符串
GOOGLE_CLOUD_STORAGE_PROJ_ID
Google Cloud 项目 ID
字符串
GOOGLE_CLOUD_STORAGE_BUCKET_NAME
Google Cloud Storage存储桶名称
字符串
GOOGLE_CLOUD_UNIFORM_BUCKET_ACCESS
访问类型
布尔值
true
用于调试和日志记录
DEBUG
打印组件日志
布尔值
LOG_PATH
日志文件存储位置
字符串
Flowise/packages/server/logs
LOG_LEVEL
日志的不同级别
枚举字符串:error、info、verbose、debug
info
DEBUG:如果设置为true,将在终端/控制台打印日志:

LOG_LEVEL: 记录日志的不同级别。可以是error、info、verbose或debug。默认设置为info,只有logger.info会被保存到日志文件中。如果你想要获取完整的详细信息,请设置为debug。



S3日志流式处理
当STORAGE_TYPE环境变量设置为s3时,日志将自动流式传输并存储到S3。每小时将创建一个新的日志文件,从而更容易进行调试。
GCS日志流
当STORAGE_TYPE环境变量设置为gcs时,日志将自动流式传输到Google Cloud Logging。
凭证
Flowise使用加密密钥将您的第三方API密钥作为加密凭证进行存储。
默认情况下,启动应用程序时会生成一个随机加密密钥,并存储在某个文件路径下。每次都会检索此加密密钥来解密聊天流程中使用的凭据。例如,您的OpenAI API密钥、Pinecone API密钥等。
您可以配置为使用AWS Secret Manager来存储加密密钥。
SECRETKEY_STORAGE_TYPE
如何存储加密密钥
枚举字符串:local、aws
local
SECRETKEY_PATH
保存加密密钥的本地文件路径
字符串
Flowise/packages/server
FLOWISE_SECRETKEY_OVERWRITE
要使用的加密密钥,以替代现有密钥
字符串
SECRETKEY_AWS_ACCESS_KEY
字符串
SECRETKEY_AWS_SECRET_KEY
字符串
SECRETKEY_AWS_REGION
字符串
由于某些原因,有时加密密钥可能会被重新生成,或者存储路径发生了变化,这会导致出现类似“无法解密凭据。”的错误
为了避免这种情况,您可以将自己的加密密钥设置为FLOWISE_SECRETKEY_OVERWRITE,以便每次都能使用相同的加密密钥。对格式没有限制,您可以将其设置为任何您想要的文本,或者与您的FLOWISE_PASSWORD相同。

提示框(样式:信息) 从用户界面(UI)返回的凭证API密钥与您设置的原始API密钥长度不同。这是一个伪前缀字符串,用于防止网络欺骗,因此我们不会将API密钥返回给UI。但是,在与聊天流程交互时,将检索并使用正确的API密钥。 {% 结束提示 %}
对于模型
在某些情况下,您可能希望在现有的聊天模型和大型语言模型(LLM)节点上使用自定义模型,或者仅允许访问特定模型。
默认情况下,Flowise会从这里获取模型列表。但用户可以创建自己的models.json文件并指定文件路径:
MODEL_LIST_CONFIG_JSON
从您的models.json配置文件加载模型列表的链接
String
对于内置和外部依赖
Flowise中存在某些节点/功能,允许用户运行JavaScript代码。出于安全考虑,默认情况下它只允许使用特定的依赖项。可以通过设置以下环境变量来解除对内置和外部模块的限制:
TOOL_FUNCTION_BUILTIN_DEP
要使用的Node.js内置模块
String
TOOL_FUNCTION_EXTERNAL_DEP
要使用的外部模块
String
ALLOW_BUILTIN_DEP
允许使用项目依赖,如cheerio、typeorm
Boolean
# 允许使用所有内置模块
内置依赖工具函数=*
# 仅允许使用fs
内置工具功能依赖=文件系统
# 仅允许使用crypto和fs
内置工具函数依赖=加密、文件系统
# 允许使用外部npm模块。
TOOL_FUNCTION_EXTERNAL_DEP=cheerio,typeorm
允许内置依赖=true使用内置依赖项
{% 提示 样式="警告" %}
一些内置依赖库,如Puppeteer,可能会引入潜在的安全漏洞。建议在使用前仔细分析和评估这些风险。
NodeVM 执行错误:VMError:无法找到模块
如果你正在使用默认情况下不允许使用的库,你可以选择:
允许所有项目的库/依赖项:
ALLOW_BUILTIN_DEP=true2.(推荐)明确允许特定的库/依赖项:TOOL_FUNCTION_EXTERNAL_DEP=cheerio,typeorm
安全配置
HTTP_DENY_LIST
阻止对MCP服务器中指定URL或域名的HTTP请求
以逗号分隔的URL/域名
(空)
CUSTOM_MCP_SECURITY_CHECK
启用自定义MCP配置的全面安全验证
true | false
true
CUSTOM_MCP_PROTOCOL
设置自定义MCP通信的默认协议
stdio | sse
stdio
CUSTOM_MCP_SECURITY_CHECK=true
默认情况下,此功能是启用的。启用后,将应用以下安全验证:
命令白名单:仅允许执行安全命令(
node、npx、python、python3、docker)参数验证:阻止危险的文件路径、目录遍历和可执行文件
注入防护:防止Shell元字符和命令链
环境保护:阻止修改关键环境变量(PATH、LD_LIBRARY_PATH)
CUSTOM_MCP_PROTOCOL
stdio:直接进程通信(默认方式,需要执行命令)sse:基于HTTP的服务器发送事件(建议用于生产环境,更安全)
推荐的生产设置
# 启用安全验证(默认)
CUSTOM_MCP_SECURITY_CHECK=true
# 使用SSE协议以提升安全性
CUSTOM_MCP_PROTOCOL=sse
# 屏蔽危险域名(示例)
HTTP_DENY_LIST=localhost,127.0.0.1,internal.company.com警告:禁用CUSTOM_MCP_SECURITY_CHECK将允许任意命令执行,并在生产环境中带来重大安全风险。
设置环境变量的示例
NPM(Node Package Manager)
在使用npx运行Flowise时,你可以设置所有这些变量。例如:
npx flowise start --端口=3000 --调试=trueDocker
docker run -d -p 5678:5678 flowise \
-e DATABASE_TYPE=postgresdb \
-e DATABASE_PORT=<POSTGRES_PORT> \
-e DATABASE_HOST=<POSTGRES_HOST> \
-e DATABASE_NAME=<POSTGRES_DATABASE_NAME> \
-e DATABASE_USER=<POSTGRES_USER> \
-e DATABASE_PASSWORD=<POSTGRES_PASSWORD> \Docker Compose
你可以在docker文件夹中的.env文件中设置所有这些变量。请参考.env.example文件。
Last updated