KeepHQ项目配置详解:环境变量全指南
项目概述
KeepHQ是一个高度可配置的自动化工作流平台,通过环境变量实现灵活定制。本文将全面解析KeepHQ的各项配置参数,帮助开发者根据实际需求进行个性化设置。
核心配置解析
基础服务配置
KeepHQ的基础服务配置决定了服务器的基本运行参数:
- KEEP_HOST:服务器监听地址,默认为0.0.0.0表示监听所有网络接口
- PORT:服务端口号,默认8080端口
- SCHEDULER:工作流调度器开关,控制定时任务的执行
- CONSUMER:消息消费者开关,影响事件处理能力
生产环境中建议将HOST设置为具体IP地址,并确保端口不与现有服务冲突。
日志与环境配置
日志系统是运维监控的重要工具,KeepHQ提供多级日志控制:
LOG_LEVEL=DEBUG # 可设置为DEBUG/INFO/WARNING/ERROR/CRITICAL
ENVIRONMENT=production # 区分开发/测试/生产环境
LOG_FORMAT=open_telemetry # 支持OpenTelemetry和终端友好格式
开发环境建议使用DEBUG级别和dev_terminal格式,生产环境则应使用INFO及以上级别。
数据库连接配置
数据库是KeepHQ的核心组件,支持多种配置方式:
DATABASE_CONNECTION_STRING=postgresql://user:password@host:port/dbname
DATABASE_POOL_SIZE=10 # 连接池大小
DATABASE_MAX_OVERFLOW=20 # 最大溢出连接数
对于云数据库(如Cloud SQL),还需配置:
DB_CONNECTION_NAME=project:region:instance
DB_IP_TYPE=private # 推荐生产环境使用私有IP
高级功能配置
认证与授权
KeepHQ支持多种认证方式:
AUTH_TYPE=auth0 # 可选auth0/keycloak/db/noauth/oauth2proxy
KEEP_JWT_SECRET=your_strong_secret # JWT签名密钥
KEEP_DEFAULT_USERNAME=admin # 初始管理员账号
生产环境务必设置强密码并启用定期密码重置:
KEEP_FORCE_RESET_DEFAULT_PASSWORD=true
密钥管理
敏感信息的安全存储方案:
SECRET_MANAGER_TYPE=VAULT # 支持FILE/GCP/K8S/VAULT
SECRET_MANAGER_DIRECTORY=/secure/path # 文件存储路径
可观测性配置
OpenTelemetry集成提供完整的监控能力:
OTEL_SERVICE_NAME=keep-prod
OTEL_EXPORTER_OTLP_ENDPOINT=http://collector:4317
CLOUD_TRACE_ENABLED=true # GCP用户可启用
集成服务配置
实时通信
WebSocket服务配置示例:
PUSHER_HOST=pusher.example.com
PUSHER_APP_ID=APP123456
PUSHER_APP_KEY=key_abcdef
PUSHER_APP_SECRET=secret_123456
AI服务集成
OpenAI配置示例:
OPENAI_API_KEY=sk-xxxxxxxx
OPENAI_MODEL_NAME=gpt-4
OPEN_AI_ORGANIZATION_ID=org-xxxxxx
监控与分析
Sentry错误监控:
SENTRY_DISABLED=false # 生产环境建议启用
Posthog用户行为分析:
POSTHOG_API_KEY=phc_xxxxxxxx
POSTHOG_DISABLED=false
最佳实践建议
-
安全配置原则:
- 生产环境禁用noauth认证模式
- 数据库使用私有网络连接
- 敏感信息使用专业密钥管理服务
-
性能调优建议:
- 根据并发量调整数据库连接池大小
- 生产环境日志级别不低于INFO
- 启用OpenTelemetry监控关键指标
-
开发环境配置:
ENVIRONMENT=development LOG_LEVEL=DEBUG KEEP_LIVE_DEMO_MODE=true # 模拟数据测试
通过合理配置这些环境变量,您可以充分发挥KeepHQ平台的潜力,构建安全、稳定且高效的自动化工作流系统。建议根据实际业务需求,逐步调整和优化各项参数。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考