mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 01:10:23 +08:00
新增 Rust 实现的 aether-hub 服务,作为 Docker 容器内部 WebSocket 帧路由器, 解决多 Gunicorn worker 进程间 tunnel 连接隔离问题。 主要改动: - 新增 aether-hub Rust 项目,实现 proxy/worker 双向帧路由与 stream_id 重映射 - 新增 HubConnectionManager/HubTunnelTransport,worker 通过 Hub 转发 tunnel 帧 - 新增 create_tunnel_transport 工厂函数,按运行环境自动选择 Hub 或直连模式 - 新增 NODE_STATUS 广播机制,Hub 实时通知所有 worker 节点连接状态变化 - CI/CD 新增 build-hub job,Dockerfile 集成 Hub 二进制,deploy.sh 适配 Hub 构建 - 默认 GUNICORN_WORKERS 从 4 降为 2
68 lines
2.3 KiB
Plaintext
68 lines
2.3 KiB
Plaintext
# ==================== 必须配置(启动前) ====================
|
||
# 以下配置项必须在项目启动前设置
|
||
|
||
# 数据库配置
|
||
DB_HOST=localhost
|
||
DB_PORT=5432
|
||
DB_USER=postgres
|
||
DB_NAME=aether
|
||
DB_PASSWORD=your_secure_password_here
|
||
|
||
# Redis 配置
|
||
REDIS_HOST=localhost
|
||
REDIS_PORT=6379
|
||
REDIS_PASSWORD=your_redis_password_here
|
||
|
||
# JWT密钥(使用 python generate_keys.py 生成)
|
||
# 用于用户登录 token 签名,更换后所有用户需重新登录
|
||
JWT_SECRET_KEY=change-this-to-a-secure-random-string
|
||
|
||
# 独立加密密钥(用于加密 Provider API Key 等敏感数据)
|
||
# 注意:更换此密钥后需要在管理面板重新配置所有 Provider API Key
|
||
ENCRYPTION_KEY=change-this-to-another-secure-random-string
|
||
|
||
# 管理员账号(仅首次初始化时使用, 创建完成后可在系统内修改密码)
|
||
ADMIN_EMAIL=admin@example.com
|
||
ADMIN_USERNAME=admin
|
||
ADMIN_PASSWORD=admin123456
|
||
|
||
# ==================== 可选配置(有默认值) ====================
|
||
# 以下配置项有合理的默认值,可按需调整
|
||
|
||
# 应用端口(默认 8084)
|
||
# APP_PORT=8084
|
||
|
||
# Gunicorn Worker 数量(默认 2)
|
||
# Docker 部署下 Tunnel Hub 为容器内部固定服务,可安全使用多 worker。
|
||
# 非 Docker 运行时若使用 ProxyNode tunnel,建议设置为 1。
|
||
# GUNICORN_WORKERS=2
|
||
|
||
# 本地构建 app 镜像时使用的 Hub 二进制镜像
|
||
# 默认 aether-hub:local(需先本地构建 aether-hub/Dockerfile)
|
||
# 也可改为 ghcr.io/fawney19/aether-hub:latest
|
||
# HUB_BINARY_IMAGE=aether-hub:local
|
||
|
||
# Gunicorn Max Requests(默认 4000)
|
||
# Worker 处理指定数量请求后自动重启,防止内存泄漏
|
||
# max-requests-jitter 会自动设置为 MAX_REQUESTS/20 (5%)
|
||
# MAX_REQUESTS=4000
|
||
|
||
# API Key 前缀(默认 sk)
|
||
# API_KEY_PREFIX=sk
|
||
|
||
# 日志级别(默认 INFO,可选:DEBUG, INFO, WARNING, ERROR)
|
||
# LOG_LEVEL=INFO
|
||
|
||
# CORS 配置(允许跨域的源,多个源用逗号分隔)
|
||
# 示例: http://localhost:3000,https://example.com
|
||
# 默认: * (允许所有源)
|
||
# CORS_ORIGINS=*
|
||
|
||
# ==================== 计费系统(可选) ====================
|
||
# Video/Image/Audio 缺失 billing_rule 时是否拒绝请求(默认 false:允许请求但 cost=0 并告警)
|
||
# BILLING_REQUIRE_RULE=false
|
||
#
|
||
# required 维度缺失时是否拒绝请求/标记任务失败(默认 false:cost=0 + 标记 incomplete)
|
||
# BILLING_STRICT_MODE=false
|
||
#
|