本文档详细说明了系统所需的环境变量配置项,包括中间件、服务端口、认证、访问地址等配置。讯飞开放平台、AI Ability Chat、虚拟人能力、知识库平台等业务能力账号已迁移到控制台 平台账号管理 页面配置,不再写入 .env 文件。
在使用 Docker Compose 部署之前,以下环境变量必须手动配置。详细的配置步骤和说明请参考 部署指南。
关键配置项概览:
启动后在平台账号管理中配置的业务能力账号(不写入 .env):
- 讯飞开放平台:
PLATFORM_APP_ID、PLATFORM_API_KEY、PLATFORM_API_SECRET、SPARK_API_PASSWORD、SPARK_RTASR_API_KEY
- AI Ability Chat:
AI_ABILITY_CHAT_BASE_URL、AI_ABILITY_CHAT_MODEL、AI_ABILITY_CHAT_API_KEY
- 虚拟人能力:
SPARK_VIRTUAL_MAN_APP_ID、SPARK_VIRTUAL_MAN_API_KEY、SPARK_VIRTUAL_MAN_API_SECRET
- 知识库平台:RAGFlow 的
RAGFLOW_BASE_URL、RAGFLOW_API_TOKEN、RAGFLOW_TIMEOUT、RAGFLOW_DEFAULT_GROUP,以及星火知识库的 XINGHUO_DATASET_ID
文档中的配置项按以下方式标注:
- 用户必填: 必须手动配置的字段(无默认值或需要申请外部服务)
- 使用默认: 推荐使用 Docker Compose 提供的默认配置(如果使用外部中间件则需修改)
- 必填: 必须存在但已提供默认值的配置(通常无需修改)
- 可选: 非必需配置,可按需启用
- 条件必填: 在特定场景下才需要配置的字段
独立部署说明:
- 如果使用 Docker Compose 一键部署,以下配置中使用容器名(如
postgres、mysql、redis、kafka、minio)作为主机地址即可
- 如果中间件服务单独部署(不在同一 Docker 网络中),需要将以下配置中的容器名修改为实际的 IP 地址或域名,并同步修改对应的连接信息(如用户名、密码、端口等):
- PostgreSQL 相关:
POSTGRES_HOST、POSTGRES_USER、POSTGRES_PASSWORD、POSTGRES_PORT 等
- MySQL 相关:
MYSQL_HOST、MYSQL_USER、MYSQL_PASSWORD、MYSQL_URL 等
- Redis 相关:
REDIS_ADDR、REDIS_HOST、REDIS_PASSWORD、REDIS_PORT 等
- Kafka 相关:
KAFKA_SERVERS 及认证信息(如需要)
- MinIO 相关:
OSS_ENDPOINT、OSS_DOWNLOAD_HOST、OSS_ACCESS_KEY_ID、OSS_SECRET_KEY 等
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| POSTGRES_USER |
使用默认 |
string |
PostgreSQL 数据库用户名 |
spark |
| POSTGRES_PASSWORD |
使用默认 |
string |
PostgreSQL 数据库密码 |
spark123 |
| POSTGRES_HOST |
使用默认 |
string |
PostgreSQL 数据库主机地址 |
postgres |
| POSTGRES_PORT |
使用默认 |
int |
PostgreSQL 数据库端口号 |
5432 |
| MYSQL_ROOT_PASSWORD |
使用默认 |
string |
MySQL 数据库 root 用户密码 |
root123 |
| MYSQL_USER |
使用默认 |
string |
MySQL 数据库用户名 |
root |
| MYSQL_PASSWORD |
使用默认 |
string |
MySQL 数据库密码(默认从 MYSQL_ROOT_PASSWORD 获取) |
root123 |
| MYSQL_HOST |
使用默认 |
string |
MySQL 数据库主机地址 |
mysql |
| MYSQL_PORT |
使用默认 |
int |
MySQL 数据库端口号 |
3306 |
| MYSQL_URL |
使用默认 |
string |
MySQL 数据库 JDBC 连接 URL |
jdbc:mysql://mysql:3306/astron_console |
| REDIS_PASSWORD |
可选 |
string |
Redis 密码(为空表示无密码) |
(留空) |
| REDIS_DATABASE |
使用默认 |
int |
Redis 数据库索引(0-15) |
0 |
| REDIS_IS_CLUSTER |
使用默认 |
bool |
Redis 是否为集群模式 |
false |
| REDIS_CLUSTER_ADDR |
可选 |
string |
Redis 集群地址(集群模式时使用) |
redis1:6379,redis2:6379 |
| REDIS_EXPIRE |
使用默认 |
int |
Redis 缓存过期时间(秒) |
3600 |
| REDIS_ADDR |
使用默认 |
string |
Redis 连接地址(单机模式) |
redis:6379 |
| REDIS_HOST |
使用默认 |
string |
Redis 主机地址 |
redis |
| REDIS_PORT |
使用默认 |
int |
Redis 端口号 |
6379 |
| ELASTICSEARCH_SECURITY_ENABLED |
使用默认 |
bool |
Elasticsearch 是否启用安全认证 |
false |
| ES_JAVA_OPTS |
使用默认 |
string |
Elasticsearch JVM 参数配置 |
-Xms512m -Xmx512m |
| EXPOSE_KAFKA_PORT |
使用默认 |
int |
Kafka 对外暴露的端口号 |
9092 |
| KAFKA_REPLICATION_FACTOR |
使用默认 |
int |
Kafka 副本因子 |
1 |
| KAFKA_CLUSTER_ID |
使用默认 |
string |
Kafka 集群 ID |
MkU3OEVBNTcwNTJENDM2Qk |
| KAFKA_TIMEOUT |
使用默认 |
int |
Kafka 连接超时时间(秒) |
60 |
| KAFKA_SERVERS |
使用默认 |
string |
Kafka 服务器地址列表 |
kafka:29092 |
| MINIO_ROOT_USER |
使用默认 |
string |
MinIO 管理员用户名 |
minioadmin |
| MINIO_ROOT_PASSWORD |
使用默认 |
string |
MinIO 管理员密码 |
minioadmin123 |
| EXPOSE_MINIO_PORT |
使用默认 |
int |
MinIO API 对外暴露的端口号 |
18998 |
| EXPOSE_MINIO_CONSOLE_PORT |
使用默认 |
int |
MinIO 控制台对外暴露的端口号 |
18999 |
| OSS_TYPE |
使用默认 |
string |
对象存储类型(s3/oss/obs 等) |
s3 |
| OSS_ENDPOINT |
使用默认 |
url |
对象存储服务端点地址 |
http://minio:9000 |
| OSS_ACCESS_KEY_ID |
使用默认 |
string |
对象存储访问密钥 ID |
${MINIO_ROOT_USER:-minioadmin} |
| OSS_ACCESS_KEY_SECRET |
使用默认 |
string |
对象存储访问密钥 Secret |
${MINIO_ROOT_PASSWORD:-minioadmin123} |
| OSS_BUCKET_NAME |
使用默认 |
string |
对象存储桶名称 |
workflow |
| OSS_TTL |
使用默认 |
int |
对象存储 URL 有效期(秒) |
157788000 |
| OSS_DOWNLOAD_HOST |
使用默认 |
url |
对象存储下载访问地址 |
http://minio:9000 |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| OTLP_ENABLE |
必填 |
int |
是否启用 OTLP 监控(0=禁用, 1=启用) |
0 |
| OTLP_ENDPOINT |
必填 |
string |
OTLP 服务端点地址 |
127.0.0.1:4317 |
| OTLP_METRIC_TIMEOUT |
必填 |
int |
OTLP 指标上报超时时间(毫秒) |
3000 |
| OTLP_METRIC_EXPORT_INTERVAL_MILLIS |
必填 |
int |
OTLP 指标导出间隔(毫秒) |
3000 |
| OTLP_METRIC_EXPORT_TIMEOUT_MILLIS |
必填 |
int |
OTLP 指标导出超时(毫秒) |
3000 |
| OTLP_TRACE_TIMEOUT |
必填 |
int |
OTLP 追踪超时时间(毫秒) |
3000 |
| OTLP_TRACE_MAX_QUEUE_SIZE |
必填 |
int |
OTLP 追踪队列最大大小 |
2048 |
| OTLP_TRACE_SCHEDULE_DELAY_MILLIS |
必填 |
int |
OTLP 追踪调度延迟(毫秒) |
3000 |
| OTLP_TRACE_MAX_EXPORT_BATCH_SIZE |
必填 |
int |
OTLP 追踪批量导出最大数量 |
2048 |
| OTLP_TRACE_EXPORT_TIMEOUT_MILLIS |
必填 |
int |
OTLP 追踪导出超时(毫秒) |
3000 |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| EXPOSE_NGINX_PORT |
必填 |
int |
Nginx 对外暴露的端口号 |
80 |
| CORE_TENANT_PORT |
必填 |
int |
Tenant 核心服务端口号 |
5052 |
| CORE_DATABASE_PORT |
必填 |
int |
Database 核心服务端口号 |
7990 |
| CORE_RPA_PORT |
必填 |
int |
RPA 核心服务端口号 |
17198 |
| CORE_LINK_PORT |
必填 |
int |
Link 核心服务端口号 |
18888 |
| CORE_AITOOLS_PORT |
必填 |
int |
AITools 核心服务端口号 |
18668 |
| CORE_AGENT_PORT |
必填 |
int |
Agent 核心服务端口号 |
17870 |
| CORE_KNOWLEDGE_PORT |
必填 |
int |
Knowledge 核心服务端口号 |
20010 |
| CORE_WORKFLOW_PORT |
必填 |
int |
Workflow 核心服务端口号 |
7880 |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| CONSOLE_CASDOOR_URL |
用户必填 |
url |
Casdoor 认证服务器地址 |
http://your-casdoor-server:8000 |
| CONSOLE_CASDOOR_ID |
用户必填 |
string |
Casdoor OAuth2 客户端 ID |
astron-agent-client |
| CONSOLE_CASDOOR_APP |
用户必填 |
string |
Casdoor 应用名称 |
astron-agent-app |
| CONSOLE_CASDOOR_ORG |
用户必填 |
string |
Casdoor 组织名称 |
built-in |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| DATABASE_DB_TYPE |
必填 |
string |
数据库类型 |
mysql |
| DATABASE_USERNAME |
必填 |
string |
数据库用户名(默认从 MYSQL_USER 获取) |
${MYSQL_USER:-root} |
| DATABASE_PASSWORD |
必填 |
string |
数据库密码(默认从 MYSQL_PASSWORD 获取) |
${MYSQL_PASSWORD:-root123} |
| DATABASE_URL |
必填 |
string |
数据库连接 URL |
(mysql:3306)/tenant |
| DATABASE_MAX_OPEN_CONNS |
必填 |
int |
数据库最大连接数 |
5 |
| DATABASE_MAX_IDLE_CONNS |
必填 |
int |
数据库最大空闲连接数 |
5 |
| LOG_PATH |
必填 |
string |
日志文件路径 |
log.txt |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| DATABASE_POSTGRES_DATABASE |
必填 |
string |
PostgreSQL 数据库名称 |
sparkdb_manager |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| RPA_URL |
必填 |
url |
RPA 服务基础地址 |
https://newapi.iflyrpa.com |
| XIAOWU_RPA_TASK_CREATE_URL |
必填 |
url |
小悟 RPA 任务创建接口地址(默认从 RPA_URL 拼接) |
${RPA_URL}/api/rpa-openapi/workflows/execute-async |
| XIAOWU_RPA_TASK_QUERY_URL |
必填 |
url |
小悟 RPA 任务查询接口地址(默认从 RPA_URL 拼接) |
${RPA_URL}/api/rpa-openapi/executions |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| LINK_MYSQL_DB |
必填 |
string |
Link 模块使用的 MySQL 数据库名称 |
spark-link |
知识库选择说明: 系统支持两种知识库方式,创建知识库时根据实际需求选择其中一种:
- RAGFlow: 使用 RAGFlow 知识库服务
- 星火知识库: 使用讯飞星火知识库服务
知识库平台账号不再通过 .env 配置。请在控制台 平台账号管理 - 知识库平台 中填写对应配置;保存后全局生效,不需要重启容器。选择哪一种方式,对应的配置项就是必填的;未选择的方式可以留空。
| 配置项 |
所属平台 |
配置类型 |
用途说明 |
示例值 |
| RAGFLOW_BASE_URL |
RAGFlow |
条件必填 |
RAGFlow 服务基础地址(使用 RAGFlow 时必填) |
http://localhost:18080 |
| RAGFLOW_API_TOKEN |
RAGFlow |
条件必填 |
RAGFlow API 访问令牌(使用 RAGFlow 时必填) |
your-ragflow-token |
| RAGFLOW_TIMEOUT |
RAGFlow |
条件必填 |
RAGFlow 请求超时时间(秒)(使用 RAGFlow 时必填) |
60 |
| RAGFLOW_DEFAULT_GROUP |
RAGFlow |
条件必填 |
RAGFlow 默认分组名称(使用 RAGFlow 时必填) |
Astron Knowledge Base |
| XINGHUO_DATASET_ID |
星火知识库 |
条件必填 |
星火知识库数据集 ID(使用星火知识库时必填) |
(留空) |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| WORKFLOW_MYSQL_DB |
必填 |
string |
Workflow 模块使用的 MySQL 数据库名称 |
workflow |
| WORKFLOW_KAFKA_TOPIC |
必填 |
string |
Workflow 使用的 Kafka 主题名称 |
spark-agent-builder |
| RUNTIME_ENV |
必填 |
string |
运行环境(dev/test/prod) |
dev |
| 变量名 |
配置类型 |
类型 |
用途说明 |
示例值 |
| SERVICE_LOCATION |
必填 |
string |
服务可用区(dx/hf/gz) |
hf |
| HEALTH_CHECK_INTERVAL |
必填 |
string |
健康检查间隔时间 |
30s |
| HEALTH_CHECK_TIMEOUT |
必填 |
string |
健康检查超时时间 |
10s |
| HEALTH_CHECK_RETRIES |
必填 |
int |
健康检查重试次数 |
60 |
| NETWORK_SUBNET |
必填 |
string |
Docker 网络子网配置 |
172.20.0.0/16 |
如发现配置项说明有误或需要补充,欢迎提交 Issue 或 Pull Request。