Files
zkxw/deploy/docker/.env.example
2026-09-17 23:49:16 +08:00

112 lines
4.1 KiB
Bash
Raw Permalink 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.
# ============================================
# 中科兴皖 Docker 部署环境变量
# 复制为 .env 后修改密码与密钥,勿提交 .env 到 git
# ============================================
# Compose Profile:full=全栈自带中间件 | app=仅应用(连接甲方已有 MySQL/Redis/MinIO)
# 若已有 MySQL/Redis 但需自带 MinIO:COMPOSE_PROFILES=app,storage
COMPOSE_PROFILES=full
# 对外 HTTP 端口(Nginx)
HTTP_PORT=8112
# 应用镜像(交付包 docker load 后须与 images/zkxw-app-images.tar 内 tag 一致)
ZKXW_BACKEND_IMAGE=zkxw-backend:latest
ZKXW_WEB_IMAGE=zkxw-web:latest
# ---------- MySQL(profile=full 时使用,服务名 mysql)----------
MYSQL_ROOT_PASSWORD=change-me-mysql-root
# profile=app 时改为甲方数据库地址,例如:
# DATABASE_URL=mysql+pymysql://user:pass@10.0.0.10:3306/zkxw
DATABASE_URL=mysql+pymysql://root:change-me-mysql-root@mysql:3306/zkxw
# ---------- 应用 ----------
APP_NAME=中科兴皖
DEBUG=false
API_V1_PREFIX=/api
SECRET_KEY=change-me-jwt-secret-use-long-random-string
ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=43200
DEFAULT_TENANT_NO=zkxw
WEB_AUTH_DEFAULT_ROLE=super_admin
# ---------- Redis(profile=full 时使用,服务名 redis)----------
# profile=app 时改为甲方 Redis 地址
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_DB=0
REDIS_PASSWORD=
REDIS_TIMEOUT_SEC=30
REDIS_SSL_ENABLED=false
# ---------- MinIO(profile=full 或 storage 时使用,服务名 minio:9000)----------
STORAGE_TYPE=minio
MINIO_ENDPOINT=minio:9000
MINIO_ACCESS_KEY=zkxw_minio
MINIO_SECRET_KEY=change-me-minio-secret
MINIO_BUCKET=zkxw
MINIO_SECURE=false
# 浏览器访问附件前缀(相对路径;由 zkxw-web 镜像内 Nginx 反代到 minio:9000,勿改为 :9000)
MINIO_BASE_URL=/minio/zkxw
# profile=app 且使用甲方 MinIO 时示例:
# MINIO_ENDPOINT=10.0.0.12:9000
# MINIO_BASE_URL=http://10.0.0.12:9000/zkxw
# 并需同步修改 web-admin/.env.docker 中 VITE_MINIO_BASE_URL 后重新 build web 镜像
# ---------- API 加密(Docker 交付默认关闭;若启用须与 web-admin/.env.docker 一致)----------
API_ENCRYPT_ENABLED=false
API_ENCRYPT_FAIL_OPEN=false
# API_ENCRYPT_FIXED_SECRET=
# API_ENCRYPT_TS_SKEW_SEC=300
# API_ENCRYPT_NONCE_TTL_SEC=300
# 走 Nginx 同域 /api 反代,一般无需额外 CORS
# BACKEND_CORS_ORIGINS=["http://your-host:8112"]
# 登录 RSA(留空时各 Worker 共用镜像内置默认密钥;生产建议配置独立 PEM)
# LOGIN_RSA_PRIVATE_KEY_PEM=
# 全量 API 请求日志(需 sys_api_request_log 表,否则可关闭)
API_REQUEST_LOG_ENABLED=false
# ---------- 微信服务号 OA 模板消息 ----------
# AppID / 模板 ID / 字段可写在本示例;Secret 勿提交 git(留空)
# 发版打包:scripts/package-docker-deploy.sh 会从本机 deploy/docker/.env 注入
# WX_MP_SECRET / WXPAY_SECRET / LOGIN_RSA 等到交付包 .env(有值才覆盖)
WX_MP_NOTIFY_ENABLED=true
WX_MP_APPID=wxe576b24f873f47cb
# 必填:微信公众平台 → 服务号 → 开发 → 基本配置 → AppSecret(仅写在本机 .env)
WX_MP_SECRET=
WX_MP_TEMPLATE_APPROVAL=ZKKnm3PrH97iKt4SDrONiw0TvpDyRbQXdmbF6wz-eak
WX_MP_TEMPLATE_CC=rHu7intrAqOqSlxmjqq7FfyC1GKbRi3XaP1-ZEcnvqs
WX_MP_TEMPLATE_APPLICANT_PROGRESS=rHu7intrAqOqSlxmjqq7Fb6ylcB3u3quKSBYUcR6NU4
# 审批字段(生产)
WX_MP_TPL_FIELD_TITLE=thing12
WX_MP_TPL_FIELD_APPLICANT=thing18
WX_MP_TPL_FIELD_NODE=thing7
WX_MP_TPL_FIELD_TIME=time17
WX_MP_TPL_FIELD_PROCESS=thing8
# 抄送字段
WX_MP_TPL_CC_FIELD_TITLE=thing5
WX_MP_TPL_CC_FIELD_APPLICANT=thing2
WX_MP_TPL_CC_FIELD_TIME=time3
WX_MP_TPL_CC_FIELD_PROCESS=thing1
# 申请人进度字段
WX_MP_TPL_PROGRESS_FIELD_BUSINESS=thing5
WX_MP_TPL_PROGRESS_FIELD_PROCESS=thing1
WX_MP_TPL_PROGRESS_FIELD_APPROVER=thing6
WX_MP_TPL_PROGRESS_FIELD_RESULT=const4
WX_MP_TPL_PROGRESS_FIELD_TIME=time11
# ---------- 微信支付 / 小程序凭证(登录、模板消息跳转)----------
# WXPAY_MCHID=
WXPAY_MINI_APPID=wx2b139581f4c855e4
# 必填:小程序 AppSecret(仅写在本机 .env,打包时注入交付包)
WXPAY_SECRET=
# WXPAY_API_KEY=
# WXPAY_NOTIFY_URL=https://your-domain.com/api/payment/notify