Files
opendance-web/web-server/.env.example
T
zijunchiang 8c2f2afaea docs: 三库文档规范化(去混淆字符 + 占位符)+ Web README 初次部署清单
- 三库所有 .md/.txt 与配置样例中的 — – … § → 一律换成 ASCII(Gitea 的
  「模棱两可的 Unicode 字符」告警即由这几个字符触发;中文全角标点不受影响,
  实测 README.txt 修正后告警消失)
- contracts/* 在三库保持逐字节一致(已校验 md5)
- 残留真实值清理:README.txt 建库 SQL 的 dpendance -> opendance/opendance_app,
  Android HostDiscovery.kt 注释示例 192.168.1.23 -> 192.0.2.23
- Web README.txt 新增「初次部署(从零跑起来)」8 步清单与「常见问题(初次部署)」
  7 条;去掉纯文本 README 里的 markdown 粗体标记;统一 '以 root 直接执行' 写法
- 重新打包 v0.2.0

验证:168 项单测通过;契约 6 项与 30 条路由一致。
2026-09-15 21:28:12 +08:00

61 lines
2.5 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ============================================================
# OpenDance Studio Web 服务端 -- 环境变量样例
# 复制为 .env 后填写。.env 已被 .gitignore 忽略,禁止提交。
# ============================================================
# ---- 服务 ----
NODE_ENV=production
# 软件 API 端口:Windows/Godot 客户端、Android App 调用,
# 只提供 /api、/health、/static、/contracts,不提供管理端页面
PORT=3000
# 管理端端口:浏览器访问,提供管理端 SPA 页面 + 上面全部接口。
# 默认取 PORT + 1;与 PORT 设为相同值即为单端口兼容模式(管理页面与接口同端口)。
ADMIN_PORT=3001
# 监听地址(软件 API 端口)。本地开发用 0.0.0.0(便于同网段设备联调);
# 生产环境若反代与后端同机,建议改为 127.0.0.1
HOST=0.0.0.0
# 管理端监听地址,默认与 HOST 相同。
# 需要"接口对外、管理端只对本机开放"时可单独设置,例如 ADMIN_HOST=127.0.0.1
# ADMIN_HOST=0.0.0.0
# 管理端静态站点目录(默认取 ../admin)。管理端页面只在 ADMIN_PORT 上提供,
# 反向代理把浏览器请求转发到 ADMIN_PORT、客户端接口请求转发到 PORT,
# 见 deploy/proxy/README.md
ADMIN_DIR=../admin
# ---- 现有 MySQL 实例(外部提供,本项目不部署 MySQL)----
DB_HOST=<数据库主机>
DB_PORT=3306
DB_USER=opendance_app
DB_PASS=<数据库口令>
DB_NAME=opendance
# 生产环境必须为 false,表结构一律走 TypeORM migration
DB_SYNCHRONIZE=false
DB_LOGGING=false
# ---- 文件存储 ----
# 上传文件的落盘目录(本机路径,生产环境建议用部署脚本的默认值
# /var/lib/opendance/storage,并确保服务用户可写)
STORAGE_DIR=/data/storage
# 单文件上传上限(字节),默认 512 MiB
UPLOAD_MAX_BYTES=536870912
# ---- 可选的 Assimp(FBX/glTF 动作预处理 + 压缩包模型转换)----
# 未安装时 FBX 动作的预处理会以失败状态返回,不影响 BVH/VMD;
# 但上传 .zip 模型包时必须能调用到它
ASSIMP_BIN=assimp
# PMX/FBX 的交付格式:glb(默认)| vrm
MODEL_CONVERT_FORMAT=glb
# 压缩包里优先选用的 PMX 文件名
MODEL_CONVERT_PMX=Hatsune Miku.pmx
# 单次转换超时(毫秒)
MODEL_CONVERT_TIMEOUT_MS=180000
# ---- 默认模型(可选)----
# DEFAULT_MODEL_ID=1
# ---- 契约目录(可选)----
# 设置后 /health 与 /api/catalog/version 会读取该目录下的 VERSION 文件;
# 未设置时使用编译进代码的契约版本常量
# CONTRACTS_DIR=/opt/opendance/contracts