FlowiseAI - 配置与部署完全指南

学习日期:2026-05-07
文档来源:https://docs.flowiseai.com/configuration


一、环境变量体系

Flowise 支持大量环境变量配置,通过 .env 文件设在 packages/server 目录下。

1. 基础配置

变量说明默认值
PORTHTTP 端口3000
FLOWISE_FILE_SIZE_LIMIT上传文件大小限制50mb
NUMBER_OF_PROXIES限速代理数
CORS_ORIGINS允许的跨域来源
IFRAME_ORIGINS允许的 iframe 来源
SHOW_COMMUNITY_NODES显示社区节点
DISABLED_NODES禁用节点列表(逗号分隔)

2. 数据库配置

支持 SQLite / MySQL / PostgreSQL / MariaDB 四种数据库:

SQLite(默认)

DATABASE_TYPE=sqlite
DATABASE_PATH=/root/.flowise

MySQL

DATABASE_TYPE=mysql
DATABASE_PORT=3306
DATABASE_HOST=localhost
DATABASE_NAME=flowise
DATABASE_USER=user
DATABASE_PASSWORD=123

PostgreSQL

DATABASE_TYPE=postgres
DATABASE_PORT=5432
DATABASE_HOST=localhost
DATABASE_NAME=flowise
DATABASE_USER=user
DATABASE_PASSWORD=123
PGSSLMODE=require

MariaDB

DATABASE_TYPE="mariadb"
DATABASE_PORT="3306"
DATABASE_HOST="localhost"
DATABASE_NAME="flowise"
DATABASE_USER="flowise"
DATABASE_PASSWORD="mypassword"

3. 文件存储配置

默认本地存储,支持 AWS S3 / Google Cloud Storage / Local

变量说明默认值
STORAGE_TYPE存储类型local
BLOB_STORAGE_PATH本地路径~/.flowise/storage
S3_STORAGE_BUCKET_NAMES3 Bucket
S3_STORAGE_ACCESS_KEY_IDAWS Access Key
S3_STORAGE_SECRET_ACCESS_KEYAWS Secret Key
S3_STORAGE_REGIONAWS Region
GOOGLE_CLOUD_STORAGE_CREDENTIALGCP 凭证
GOOGLE_CLOUD_STORAGE_BUCKET_NAMEGCS Bucket

4. 日志与调试

变量说明可选值
DEBUG打印组件日志true/false
LOG_PATH日志文件路径
LOG_LEVEL日志级别error/info/verbose/debug

日志文件类型:

  • server-requests.log.jsonl — 每次请求的详细记录
  • server.log — 一般操作日志
  • server-error.log — 错误+堆栈跟踪

支持日志流式写入 S3 或 GCS(按小时分片)。

5. 凭证加密

Flowise 使用加密密钥存储第三方 API 密钥(OpenAI、Pinecone 等)。

变量说明默认值
SECRETKEY_STORAGE_TYPE密钥存储方式local
SECRETKEY_PATH本地密钥路径packages/server
FLOWISE_SECRETKEY_OVERWRITE自定义加密密钥
SECRETKEY_AWS_ACCESS_KEYAWS 密钥管理
SECRETKEY_AWS_REGIONAWS 区域

6. MCP(Model Context Protocol)配置

变量说明默认值
MCP_SERVER_URLMCP 服务器 URL
MCP_SECRET_KEYMCP 认证密钥
CUSTOM_MCP_SECURITY_CHECK启用安全验证true
CUSTOM_MCP_PROTOCOL协议类型stdio/sse

安全验证(默认启用)包含:

  • 命令白名单(仅允许 node/npx/python/python3/docker
  • 参数验证(阻止危险路径、目录遍历)
  • 注入防护(阻止 shell 元字符和命令链)
  • 环境变量保护(阻止修改 PATH 等关键变量)

生产环境推荐设置:

CUSTOM_MCP_SECURITY_CHECK=true
CUSTOM_MCP_PROTOCOL=sse
HTTP_DENY_LIST=localhost,127.0.0.1
HTTP_SECURITY_CHECK=true
PATH_TRAVERSAL_SAFETY=true

7. 安全相关

变量说明
HTTP_DENY_LIST额外阻止的域名(逗号分隔)
HTTP_SECURITY_CHECK启用内置危险域名拦截(默认 true
PATH_TRAVERSAL_SAFETY防止路径遍历攻击(默认 true

二、认证与授权

1. 应用级认证(App Level)

方式一:Email & Password(v3.0.1+,推荐)

基于 Passport.js + JWT 的现代认证系统:

JWT 双令牌机制:

  • Access Token(短期,默认 60 分钟)
  • Refresh Token(长期,默认 90 天)
  • 存储在 HTTP-only 安全 Cookie 中

JWT 环境变量:

变量说明默认值
JWT_AUTH_TOKEN_SECRETAccess Token 签名密钥
JWT_REFRESH_TOKEN_SECRETRefresh Token 签名密钥
JWT_TOKEN_EXPIRY_IN_MINUTESAccess Token 过期时间60 分钟
JWT_REFRESH_TOKEN_EXPIRY_IN_MINUTESRefresh Token 过期时间90 天
JWT_AUDIENCEToken audience claimAUDIENCE
JWT_ISSUERToken issuer claimISSUER
EXPIRE_AUTH_TOKENS_ON_RESTART重启后使所有 Token 失效false
PASSWORD_SALT_HASH_ROUNDSbcrypt 盐轮数(越高越安全)10

SMTP 邮件配置:

变量说明
SMTP_HOSTSMTP 服务器地址
SMTP_PORT端口(TLS=587, SSL=465)
SMTP_USER用户名/邮箱
SMTP_PASSWORD密码或 App 专用密码
SMTP_SECURE启用 SSL/TLS
SENDER_EMAIL发件人地址

方式二:Username & Password(已废弃)

npx flowise start --FLOWISE_USERNAME=user --FLOWISE_PASSWORD=1234

2. Chatflow 级授权

为特定 Chatflow 分配 API Key 进行保护:

  1. 在 Dashboard → API Keys 创建密钥
  2. 在 Chatflow 设置中绑定该 API Key
  3. 调用时携带 Header:
"Authorization": "Bearer <your-api-key>"

3. SSO 单点登录(企业版)

支持 Microsoft Entra ID / Google / Auth0 三种 OIDC 提供商:

通用回调地址格式:

http[s]://[your-flowise-instance.com]/api/v1/{provider}/callback
提供商配置需要
MicrosoftTenant ID + Client ID + Client Secret
GoogleClient ID + Client Secret
Auth0Domain + Client ID + Client Secret

用户必须先被邀请才能使用 SSO 登录。


三、速率限制

当 Chatflow 公开访问时,可配置限速:

参数说明
Message Limit per Duration周期内允许的消息数
Duration in Seconds时间周期(秒)
Limit Message超限返回消息

示例: 60 秒内最多 20 条消息,超限返回 “Quota Exceeded”

云部署注意: 如果部署在 AWS/GCP/Azure 等代理/负载均衡器后,需要设置 NUMBER_OF_PROXIES 环境变量。

验证 IP 地址:访问 {{host_url}}/api/v1/ip,对比自己的 IP,不匹配则逐步增加 NUMBER_OF_PROXIES 直到匹配。


四、部署方式

1. NPM

npm install -g flowise
npx flowise start
npx flowise start --PORT=3000 --DEBUG=true

2. Docker

cd docker
# 创建 .env 文件
PORT=3000
DATABASE_TYPE=postgres
# ... 其他配置

# 启动
docker compose up -d
docker compose stop

3. Docker 快速启动

docker run -d -p 5678:5678 flowise \
 -e DATABASE_TYPE=postgres \
 -e DATABASE_PORT=5432 \
 -e DATABASE_HOST=<POSTGRES_HOST> \
 -e DATABASE_NAME=flowise \
 -e DATABASE_USER=flowise \
 -e DATABASE_PASSWORD=<PASSWORD>

4. 平台部署

平台说明
HuggingFace Spaces免费托管
Railway便捷部署
Render云托管
Sealos容器化
AWS / Azure / GCP各大云平台
Kubernetes容器编排

五、备份策略

SQLite

# Linux
mv DATABASE_PATH/database.sqlite DATABASE_PATH/BACKUP_FILE_NAME.sqlite
cp DATABASE_PATH/BACKUP_FILE_NAME.sqlite DATABASE_PATH/database.sqlite

PostgreSQL

pg_dump -U USERNAME -h HOST -p PORT -d DATABASE_NAME -f BACKUP_FILE.sql

MySQL / MariaDB

mysqldump -u USERNAME -p DATABASE_NAME > BACKUP_FILE.sql

六、快速参考表

场景 → 配置项

场景需要的配置
简单部署NPM 一键启动
多用户平台PostgreSQL + JWT Auth + SSO
高可用部署Docker + PostgreSQL + Redis + S3
敏感数据自定义加密密钥 + HTTPS
公开 API速率限制 + API Key
嵌入网站CORS 配置(CORS_ORIGINS=*

环境变量速查

# 基础
PORT=3000
CORS_ORIGINS=*
IFRAME_ORIGINS=*

# 数据库
DATABASE_TYPE=postgres
DATABASE_HOST=localhost
DATABASE_PORT=5432
DATABASE_NAME=flowise
DATABASE_USER=user
DATABASE_PASSWORD=pass

# 存储
STORAGE_TYPE=s3
S3_STORAGE_BUCKET_NAME=my-bucket
S3_STORAGE_ACCESS_KEY_ID=xxx
S3_STORAGE_SECRET_ACCESS_KEY=xxx

# 认证
JWT_AUTH_TOKEN_SECRET=your-secret
FLOWISE_SECRETKEY_OVERWRITE=your-encryption-key

# MCP
CUSTOM_MCP_SECURITY_CHECK=true
CUSTOM_MCP_PROTOCOL=sse