# ============================================================ # TokenHub 部署 — 环境变量模板(不含敏感信息) # 复制为 env.cfg 后填入真实值,env.cfg 已在 .gitignore 中忽略 # ============================================================ # # 使用方式(在 deploy.stack 仓库根目录执行,需先 up prod-dbs): # cp tokenhub/env.cfg.example tokenhub/env.cfg # $EDITOR tokenhub/env.cfg # 填入密码/密钥后保存 # docker compose -p tokenhub-host --env-file ./tokenhub/env.cfg -f ./tokenhub/stack.host.yml up -d # # 官方镜像:ghcr.io/astaxie/tokenhub-backend(无 Docker Hub 镜像), # 单镜像内含 Go 后端(:8080) + Next.js 管理后台(:3000)。 # 版本 tag 为纯数字(0.7.0 / 0.7 / latest),建议固定完整版本。 # # 本方案复用 prod-dbs 的 PostgreSQL(不启动 SQLite 数据卷业务库), # 需先在 prod-postgres 建库建号(SQL 模板见 tokenhub/readme.md)。 # # 注意: # - PostgreSQL 场景 TOKENHUB_SECRET_KEY 必须 ≥32 字节的稳定值,且不可变更; # - 生产(prod)环境已知占位值(change-me-*)会被按未配置处理; # - 与 newapi/mixapi 同机时 3000/8080 默认端口会冲突,改下面端口即可。 # ---------- 端口 ---------- # 管理后台宿主机端口(默认 3000,与 newapi/mixapi 冲突) TOKENHUB_FRONTEND_PORT=3000 # 后端/网关宿主机端口(默认 8080,与同机其他 8080 服务冲突时改) TOKENHUB_BACKEND_PORT=8080 # ---------- 镜像 ---------- # TokenHub 版本(ghcr.io/astaxie/tokenhub-backend 的纯数字 tag,如 0.7.0/0.7/latest) TOKENHUB_IMAGE_TAG=0.7.0 # ---------- 数据卷 ---------- # 宿主机持久化目录:/data 为应用数据(SQLite 回退/备份/图片), # releases 为版本面板在线更新与模型目录 # 部署前手动创建:mkdir -pv /data/volumes/tokenhub/{data,releases} Volumes_Path=/data/volumes/tokenhub # ---------- 数据库(复用 prod-dbs PostgreSQL)---------- # 通过外部网络 prod-dbs_default 以 service 名 postgres 访问 DB_HOST=postgres DB_PORT=5432 DB_NAME=tokenhub DB_USER=tokenhub DB_PASSWORD= # 本机无 TLS 的 PG 用 disable DB_SSLMODE=disable # ---------- TokenHub 应用 ---------- # 运行环境(prod) TOKENHUB_ENV=prod # 初始 admin 密码:≥12 字节;留占位 change-me-* 则首次启动随机生成 TOKENHUB_BOOTSTRAP_ADMIN_PASSWORD= # Admin API 静态 Token:≥32 字节随机值(运维自动化用);留空/占位则禁用该 Token TOKENHUB_ADMIN_TOKEN= # 加密根密钥:≥32 字节随机值;PG/已有库必填且不可变更 TOKENHUB_SECRET_KEY= # 展示给用户的后端访问地址(反向代理/域名场景填 https://xxx,docs 里 server URL 用它) TOKENHUB_PUBLIC_BASE_URL=http://localhost:8080 # 管理后台调用后端的地址(与后台页面不同源时按浏览器可访问地址设置) TOKENHUB_API_BASE_URL=http://localhost:8080 # 允许调用后端的精确浏览器 Origin,逗号分隔(跨源时填写,生产勿用通配符) TOKENHUB_CORS_ALLOWED_ORIGINS=http://localhost:3000 # 可信反向代理 CIDR(透传 X-Forwarded-* 时填写,逗号分隔) TOKENHUB_TRUSTED_PROXY_CIDRS= # 是否写入演示数据 TOKENHUB_SEED_DEMO=false # ---------- 可选高级项(不填用镜像默认值,见官方 docs/zh-CN/deployment.md)---------- # 内网模型服务放行私网 CIDR(RFC1918/ULA,逗号分隔) # TOKENHUB_PROVIDER_UPSTREAM_ALLOWED_CIDRS=172.22.10.0/24 # 本地 Ollama/LM Studio 放行 loopback(生产勿开) # TOKENHUB_PROVIDER_UPSTREAM_ALLOW_LOOPBACK=true # Prometheus 指标 # TOKENHUB_METRICS_ENABLED=true # TOKENHUB_METRICS_TOKEN= # OpenTelemetry tracing(Langfuse 等) # TOKENHUB_TRACING_ENABLED=true # TOKENHUB_TRACING_ENDPOINT=https:///api/public/otel/v1/traces # 高并发计费准入 Redis(可复用 dbSer Dev-Redis 172.22.10.205) # TOKENHUB_BILLING_REDIS_URL=redis://172.22.10.205:6379/0 # 出站统一代理(Provider 通道) # HTTP_PROXY= # HTTPS_PROXY= # NO_PROXY=