文件
hyb-oa/deploy/trialrun/.env.example
T

128 行
4.2 KiB
Bash
原始文件 Blame 文件历史

此文件含有模棱两可的 Unicode 字符
此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。
## hyb-oa 试运行环境变量示例(单机)
##
## 使用方式:
## cp deploy/trialrun/.env.example deploy/trialrun/.env
## 然后按需修改 deploy/trialrun/.env 中的值(不要提交 .env)
##
# ===== 基础域名(用于 refresh cookie 的 origin 校验)=====
# 单域托管模式下,前端与后端同域访问(建议生产/试运行)。
APP_ORIGIN="http://127.0.0.1:3000"
# ===== 服务端密钥(必须修改)=====
JWT_SECRET="change_me_in_trialrun"
# ===== 敏感字段加密(F25)=====
# 生成方式示例:openssl rand -base64 32
FIELD_ENCRYPTION_KEY=""
# ===== OIDC/SSO(F23,可选)=====
# OIDC_ENABLED="true"
# OIDC_ISSUER_URL=""
# OIDC_CLIENT_ID=""
# OIDC_CLIENT_SECRET=""
# OIDC_REDIRECT_URI="http://127.0.0.1:3000/api/auth/oidc/callback"
# OIDC_SCOPES="openid profile email"
# ===== 企业微信入口 / OAuth(R18,可选) =====
WECOM_ENABLED="false"
WECOM_ENTRY_ENABLED="false"
WECOM_CORP_ID=""
WECOM_AGENT_ID=""
WECOM_AGENT_SECRET=""
WECOM_OAUTH_ENABLED="false"
WECOM_REDIRECT_URI="https://oa.example.com/api/auth/wecom/callback"
# 可填写多个 host,逗号分隔,用于企微回跳和公网 returnTo 白名单
WECOM_ALLOWED_RETURN_HOSTS="oa.example.com"
IM_NOTIFIER_ENABLED="true"
# ===== 数据库(Compose 内部连接)=====
POSTGRES_DB="hyb_oa"
POSTGRES_USER="hyboa_user"
POSTGRES_PASSWORD="hyboa_password"
DATABASE_URL="postgresql://hyboa_user:hyboa_password@db:5432/hyb_oa?schema=public"
# ===== 存储(票据上传目录)=====
# 在 deploy/trialrun/docker-compose.yml 中映射到宿主机 deploy/trialrun/data/storage
STORAGE_DIR="/data/storage"
# 可选:对象存储(MinIO/S3 兼容,F21)
# - 默认 local:文件写到 STORAGE_DIR
# - 启用 MinIO:STORAGE_DRIVER="s3" 并启用 compose profile:--profile minio
STORAGE_DRIVER="local" # local|s3
S3_ENDPOINT="http://minio:9000"
S3_REGION="us-east-1"
S3_BUCKET="hyb-oa"
S3_ACCESS_KEY_ID="minioadmin"
S3_SECRET_ACCESS_KEY="minioadmin"
S3_FORCE_PATH_STYLE="true"
MINIO_ROOT_USER="minioadmin"
MINIO_ROOT_PASSWORD="minioadmin"
# ===== 单域托管 client/dist =====
SERVE_CLIENT_DIST="true"
CLIENT_DIST_DIR="../client/dist"
OPENAPI_DOCS_ENABLED="false"
# ===== 网络与端口 =====
HOST="0.0.0.0"
PORT="3000"
# ===== Cookie 安全(HTTPS 反代时建议 true)=====
COOKIE_SECURE="false"
# ===== Metrics(Prometheus)=====
METRICS_ENABLED="true"
# ===== 安全基线(试运行建议打开)=====
RATE_LIMIT_ENABLED="true"
RATE_LIMIT_LOGIN_MAX="10"
RATE_LIMIT_LOGIN_WINDOW="1 minute"
# ===== OCR(试运行可先用 mock)=====
OCR_PROVIDER="mock" # off|mock|tencent
OCR_MAX_ATTEMPTS="3"
OCR_POLL_CRON="*/5 * * * * *" # 试运行/演练可用秒级;生产建议分钟级
OCR_BATCH_SIZE="10"
OCR_LOCK_TTL_SECONDS="300"
OCR_TIMEOUT_MS="5000"
TENCENT_SECRET_ID=""
TENCENT_SECRET_KEY=""
TENCENT_OCR_REGION="ap-beijing"
# ===== 委派回收 =====
DELEGATION_REVOKE_CRON="0 * * * *"
# ===== 作业系统(pg-boss,可回滚到 cron)=====
JOB_DRIVER="pgboss" # cron|pgboss
JOBS_ENABLED="true" # false 时整体关闭作业(排障/回滚/或启用 worker 拆分)
PG_BOSS_SCHEMA="pgboss" # pg-boss 在 PG 内的 schema
# ===== Worker 拆分(可选,F20)=====
# 如需启用“API 进程 + Worker 进程”:
# 1) 设置 JOBS_ENABLED="false"(server 不跑作业)
# 2) 启动 compose 时加:--profile worker(会启动 worker 容器,worker 内强制 JOBS_ENABLED=true)
# ===== 试运行引导管理员(E20)=====
TRIALRUN_ADMIN_EMAIL="[email protected]"
TRIALRUN_ADMIN_PHONE="13800000000"
# 留空则首次 seed 自动生成并打印一次性口令
TRIALRUN_ADMIN_PASSWORD=""
# ===== Prisma Migration Diff(本地维护 migration 可选) =====
# SHADOW_DATABASE_URL="postgresql://hyboa_user:hyboa_password@db:5432/hyb_oa_shadow"
# ===== R13-R17 小团队内部管理默认上线建议 =====
PORTAL_HOME_ENABLED="true"
GLOBAL_SEARCH_ENABLED="true"
ANNOUNCEMENTS_ENABLED="true"
PRESENCE_BOARD_ENABLED="true"
WEEKLY_REPORT_ENABLED="true"
EMPLOYEE_LIFECYCLE_ENABLED="true"
TODO_BOARD_ENABLED="true"
PROJECT_DOMAIN_ENABLED="true"
PROJECT_LINKING_ENABLED="true"
CONFIDENTIAL_DOC_REFS_ENABLED="true"
PUBLIC_SECURITY_HARDENING_ENABLED="true"
PAYMENT_BATCH_ENABLED="false"
CUTOVER_CONSOLE_ENABLED="false"