90 lines
2.5 KiB
YAML
90 lines
2.5 KiB
YAML
# ============================================================
|
||
# EchoChat Docker 容器内配置
|
||
# 与 config.dev.yaml 的区别:数据库和 Redis 地址使用 Docker 服务名
|
||
# ============================================================
|
||
|
||
server:
|
||
port: 8085
|
||
mode: debug
|
||
|
||
database:
|
||
host: postgres
|
||
port: 5432
|
||
user: echochat
|
||
password: echochat_dev_2026
|
||
dbname: echochat
|
||
sslmode: disable
|
||
max_idle_conns: 10
|
||
max_open_conns: 100
|
||
|
||
redis:
|
||
host: redis
|
||
port: 6379
|
||
password: ""
|
||
db: 0
|
||
|
||
jwt:
|
||
secret: echochat-dev-jwt-secret-2026-please-change-in-production
|
||
access_expire_min: 120
|
||
refresh_expire_day: 7
|
||
issuer: echochat
|
||
|
||
log:
|
||
level: debug
|
||
format: text
|
||
output_path: stdout
|
||
file:
|
||
enable: true
|
||
dir: logs
|
||
max_size: 50
|
||
max_backups: 10
|
||
max_age: 30
|
||
compress: false
|
||
|
||
minio:
|
||
endpoint: "minio:9000"
|
||
access_key: "echochat"
|
||
secret_key: "echochat_2026-1s32dswW@#"
|
||
bucket: "echochat"
|
||
use_ssl: false
|
||
public_base_url: "https://yl.z64.cn/echochat"
|
||
|
||
# Node media-server 接入配置(Phase 2e-2 Task 7)
|
||
media_server:
|
||
base_url: "http://media-server:3300" # Docker 网络内服务名
|
||
internal_token: "dev-internal-token-change-me" # 生产环境通过 ECHOCHAT_MEDIA_SERVER_INTERNAL_TOKEN 覆盖
|
||
timeout_ms: 10000 # Task 16 Nit:5000 → 10000 兼容 Worker 冷启动
|
||
close_timeout_ms: 2000
|
||
close_retry: 2
|
||
create_router_retry: 1 # Task 16 Nit:CreateRouter 在 5xx/网络错误时的额外重试次数
|
||
|
||
# 外部 LLM/STT 配置中心(Phase B 语音转文字)
|
||
# 仅做只读 t_llm_provider/t_llm_model/t_llm_key
|
||
# 通过 ECHOCHAT_LLM_SOURCE_HOST / _USER / _PASSWORD / _DBNAME 在容器中覆盖
|
||
llm_source:
|
||
enabled: false
|
||
host: ""
|
||
port: 3306
|
||
user: ""
|
||
password: ""
|
||
dbname: ""
|
||
charset: utf8mb4
|
||
parse_time: true
|
||
loc: Local
|
||
max_idle_conns: 5
|
||
max_open_conns: 20
|
||
|
||
# 会议模块生命周期参数(Phase 2e-2 Task 8)
|
||
meeting:
|
||
host_grace_seconds: 120
|
||
empty_room_ttl_seconds: 300
|
||
cleanup_interval_seconds: 30
|
||
stale_room_hours: 4
|
||
# media-server 失败回调共享密钥:必须与 docker-compose 中 media-server 服务的 INTERNAL_WEBHOOK_SECRET 一致
|
||
# 生产部署请通过环境变量 ECHOCHAT_MEETING_INTERNAL_WEBHOOK_SECRET 覆盖(viper.AutomaticEnv 已开启)
|
||
internal_webhook_secret: internal-webhook-12xqs
|
||
cloud_law_internal_token: cloud-law-internal-xx14
|
||
recording_transcode_enabled: true
|
||
recording_transcode_ffmpeg_path: ffmpeg
|
||
recording_transcode_timeout_seconds: 600
|