首页
/ FlowiseAI Worker服务Docker Compose部署指南

FlowiseAI Worker服务Docker Compose部署指南

2025-07-05 02:27:48作者:冯梦姬Eddie

概述

FlowiseAI是一个开源的AI工作流编排平台,其Worker服务是平台的核心组件之一。本文将详细介绍如何使用Docker Compose部署FlowiseAI Worker服务,并解析各个配置参数的含义。

核心服务配置

基础配置

services:
    flowise:
        image: flowiseai/flowise-worker:latest
        restart: always
        ports:
            - '${WORKER_PORT}:${WORKER_PORT}'
  • image: 指定使用的Worker镜像版本
  • restart: always: 确保服务异常退出后自动重启
  • ports: 将容器内部端口映射到主机端口,默认5566

健康检查机制

healthcheck:
    test: ['CMD', 'curl', '-f', 'http://localhost:${WORKER_PORT}/healthz']
    interval: 10s
    timeout: 5s
    retries: 5
    start_period: 30s

健康检查配置确保服务正常运行,通过定期访问/healthz端点来验证服务状态。

关键环境变量解析

数据库配置

- DATABASE_PATH=${DATABASE_PATH}
- DATABASE_TYPE=${DATABASE_TYPE}
- DATABASE_PORT=${DATABASE_PORT}
- DATABASE_HOST=${DATABASE_HOST}

支持多种数据库类型,包括:

  • SQLite (通过DATABASE_PATH指定文件路径)
  • PostgreSQL/MySQL (需要配置HOST/PORT等参数)

安全密钥管理

- SECRETKEY_STORAGE_TYPE=${SECRETKEY_STORAGE_TYPE}
- SECRETKEY_PATH=${SECRETKEY_PATH}

支持多种密钥存储方式:

  • 本地文件存储
  • AWS Secrets Manager
  • 环境变量直接存储

日志配置

- DEBUG=${DEBUG}
- LOG_PATH=${LOG_PATH}
- LOG_LEVEL=${LOG_LEVEL}

可配置日志级别和输出路径,便于问题排查。

工具依赖

- TOOL_FUNCTION_BUILTIN_DEP=${TOOL_FUNCTION_BUILTIN_DEP}
- TOOL_FUNCTION_EXTERNAL_DEP=${TOOL_FUNCTION_EXTERNAL_DEP}

支持自定义工具依赖,扩展Worker功能。

存储配置选项

FlowiseAI Worker支持多种存储后端:

本地存储

- BLOB_STORAGE_PATH=${BLOB_STORAGE_PATH}

S3兼容存储

- S3_STORAGE_BUCKET_NAME=${S3_STORAGE_BUCKET_NAME}
- S3_STORAGE_ACCESS_KEY_ID=${S3_STORAGE_ACCESS_KEY_ID}

Google Cloud Storage

- GOOGLE_CLOUD_STORAGE_CREDENTIAL=${GOOGLE_CLOUD_STORAGE_CREDENTIAL}
- GOOGLE_CLOUD_STORAGE_BUCKET_NAME=${GOOGLE_CLOUD_STORAGE_BUCKET_NAME}

认证与安全

JWT配置

- JWT_AUTH_TOKEN_SECRET=${JWT_AUTH_TOKEN_SECRET}
- JWT_REFRESH_TOKEN_SECRET=${JWT_REFRESH_TOKEN_SECRET}

配置JWT令牌的签名密钥和过期时间。

SMTP邮件服务

- SMTP_HOST=${SMTP_HOST}
- SMTP_PORT=${SMTP_PORT}

用于发送系统通知和密码重置邮件。

企业级功能

- LICENSE_URL=${LICENSE_URL}
- FLOWISE_EE_LICENSE_KEY=${FLOWISE_EE_LICENSE_KEY}

支持企业版许可证配置。

队列系统配置

- QUEUE_NAME=${QUEUE_NAME}
- WORKER_CONCURRENCY=${WORKER_CONCURRENCY}

基于Redis的队列系统配置,支持任务分发和处理。

部署建议

  1. 环境变量管理:建议使用.env文件管理环境变量
  2. 数据持久化:确保数据库和存储卷配置正确
  3. 安全配置:生产环境必须配置JWT密钥和数据库密码
  4. 监控:利用健康检查机制集成到监控系统

常见问题

  1. 端口冲突:确保${WORKER_PORT}未被其他服务占用
  2. 权限问题:检查存储卷挂载目录的读写权限
  3. 数据库连接:验证数据库连接参数是否正确

通过合理配置这些参数,可以构建一个稳定、高效的FlowiseAI Worker服务环境,满足不同场景下的AI工作流处理需求。