forked from DevOps/deploy.stack
feat(tokenhub): 添加复用 prod-dbs 的部署配置
- 单容器一体部署(后端 8080 + 管理后台 3000)join prod-dbs_default 直连 prod-postgres - env.cfg.example 模板与 readme(建库/登录/反向代理/升级备份说明)
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
# ============================================================
|
||||
# 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=<your-strong-password>
|
||||
# 本机无 TLS 的 PG 用 disable
|
||||
DB_SSLMODE=disable
|
||||
|
||||
# ---------- TokenHub 应用 ----------
|
||||
# 运行环境(prod)
|
||||
TOKENHUB_ENV=prod
|
||||
# 初始 admin 密码:≥12 字节;留占位 change-me-* 则首次启动随机生成
|
||||
TOKENHUB_BOOTSTRAP_ADMIN_PASSWORD=<your-admin-password>
|
||||
# Admin API 静态 Token:≥32 字节随机值(运维自动化用);留空/占位则禁用该 Token
|
||||
TOKENHUB_ADMIN_TOKEN=
|
||||
# 加密根密钥:≥32 字节随机值;PG/已有库必填且不可变更
|
||||
TOKENHUB_SECRET_KEY=<your-32-byte-random-secret>
|
||||
# 展示给用户的后端访问地址(反向代理/域名场景填 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://<langfuse>/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=
|
||||
Reference in New Issue
Block a user