266 lines
11 KiB
Plaintext
266 lines
11 KiB
Plaintext
# ============================================
|
||
# 云数据库 (业务数据 - Cube.js 数据源)
|
||
# ============================================
|
||
# 首次部署时可留空,先启动系统并在“系统设置 -> 业务数据库”中配置
|
||
# 如需让业务数据库优先读取 .env,请先填写 CLOUD_DB_*,再到“系统设置 -> 业务数据库”开启“优先使用 .env 业务数据库配置”
|
||
CLOUD_DB_TYPE=mssql
|
||
CLOUD_DB_HOST=
|
||
CLOUD_DB_PORT=1433
|
||
CLOUD_DB_NAME=JSReportReplica
|
||
CLOUD_DB_USER=
|
||
CLOUD_DB_PASSWORD=
|
||
CLOUD_DB_SSL=false
|
||
# JSReportReplica 迁移约定:同步报表数据读 rpt,自建/临时维护表写 app。
|
||
# CLOUD_DB_REPORT_REWRITE=auto 表示仅当当前业务库是 JSReportReplica 时自动把旧 dbo/JSDataWarehouse/JSDataMiddlePlatform 查询映射到 rpt。
|
||
CLOUD_DB_REPORT_DATABASE=JSReportReplica
|
||
CLOUD_DB_REPORT_SCHEMA=rpt
|
||
CLOUD_DB_APP_SCHEMA=app
|
||
CLOUD_DB_REPORT_REWRITE=auto
|
||
|
||
# Product analysis source and JSReportReplica destination schema.
|
||
JIAN_SUN_DB_HOST=
|
||
JIAN_SUN_DB_PORT=1433
|
||
JIAN_SUN_DB_NAME=JianSun
|
||
JIAN_SUN_DB_USER=
|
||
JIAN_SUN_DB_PASSWORD=
|
||
|
||
# 拼多多开放平台草稿发布(服务端专用,禁止暴露给前端)
|
||
PDD_OPEN_PLATFORM_GATEWAY_URL=https://gw-api.pinduoduo.com/api/router
|
||
PDD_OPEN_PLATFORM_TIMEOUT_MS=60000
|
||
# 默认从 JianSun.dbo.sys_PddBill_Service 按店铺匹配授权。
|
||
# 数据库不可用时可临时配置 JSON 数组;不要将真实值提交到 Git。
|
||
PDD_OPEN_PLATFORM_SHOPS_JSON=
|
||
# 表内未维护应用凭证时,可由部署环境提供统一服务商应用凭证。
|
||
PDD_OPEN_PLATFORM_CLIENT_ID=
|
||
PDD_OPEN_PLATFORM_CLIENT_SECRET=
|
||
PRODUCT_ANALYSIS_REPLICA_SCHEMA=app
|
||
PRODUCT_ANALYSIS_SYNC_BATCH_SIZE=5000
|
||
PRODUCT_ANALYSIS_SYNC_ENABLED=false
|
||
PRODUCT_ANALYSIS_SYNC_CRON=* * * * *
|
||
PRODUCT_ANALYSIS_SYNC_TIMEZONE=Asia/Shanghai
|
||
PRODUCT_ANALYSIS_SYNC_STARTUP_DELAY_MS=10000
|
||
|
||
# ============================================
|
||
# 系统数据库 (系统配置 + 用户数据 + 汇总结果 - 读写)
|
||
# ============================================
|
||
# 可以先留空。留空时系统会进入 /install 安装模式,由页面引导创建系统数据库和首个管理员账号
|
||
LOCAL_DB_TYPE=mysql
|
||
LOCAL_DB_HOST=localhost
|
||
LOCAL_DB_PORT=3306
|
||
LOCAL_DB_NAME=shujuku2_system
|
||
LOCAL_DB_USER=root
|
||
LOCAL_DB_PASSWORD=
|
||
# 防止慢查询长期占满系统库连接。页面查询超过该时间会中断,单位毫秒
|
||
LOCAL_DB_QUERY_TIMEOUT_MS=60000
|
||
# 生产环境由部署脚本强制使用 /www/wwwroot/shujuku3/shared/image-search-secrets.json
|
||
# 本地留空时使用 ~/.config/shujuku3/secrets.json
|
||
SHUJUKU3_SECRET_STORE_PATH=
|
||
# 可选:设为 true 时要求公司图搜和 1688 图搜凭据齐全
|
||
REQUIRE_PERSISTED_IMAGE_SEARCH_SECRETS=false
|
||
# 系统库连接池建议保持小而稳,避免单个应用实例吃满 MySQL 连接
|
||
LOCAL_DB_CONNECTION_LIMIT=6
|
||
LOCAL_DB_QUEUE_LIMIT=50
|
||
|
||
# ============================================
|
||
# Cube.js 配置
|
||
# ============================================
|
||
# 首次安装时如留空,系统会自动生成并写入 .env
|
||
CUBEJS_SECRET=your-cubejs-secret-key
|
||
CUBEJS_API_SECRET=your-cubejs-api-secret
|
||
CUBEJS_DEV_MODE=true
|
||
|
||
# ============================================
|
||
# OAuth / 应用服务
|
||
# ============================================
|
||
# 说明:
|
||
# 1. 钉钉 AppKey/AppSecret、Google Client ID/Secret 已改为保存在本地数据库 auth_configs 表中
|
||
# 2. 这里不再需要配置 Casdoor
|
||
# 3. OAuth 回调基础地址请在系统设置 -> 登录配置 中填写
|
||
# 4. 默认管理员账号来自 init.sql: admin / admin123
|
||
|
||
# ============================================
|
||
# 企业微信配置
|
||
# ============================================
|
||
WEIXIN_CORP_ID=your-corp-id
|
||
WEIXIN_AGENT_ID=your-agent-id
|
||
WEIXIN_SECRET=your-secret
|
||
|
||
# ============================================
|
||
# 钉钉配置
|
||
# ============================================
|
||
# 仅用于预警通知机器人,不是钉钉登录配置
|
||
DINGTALK_TOKEN=your-robot-token
|
||
|
||
# ============================================
|
||
# 邮件配置
|
||
# ============================================
|
||
SMTP_HOST=smtp.example.com
|
||
SMTP_PORT=587
|
||
SMTP_USER=your-email
|
||
SMTP_PASSWORD=your-password
|
||
|
||
# ============================================
|
||
# S3 配置
|
||
# ============================================
|
||
S3_PROVIDER=aliyun
|
||
S3_ENDPOINT=oss-cn-hangzhou.aliyuncs.com
|
||
S3_BUCKET=your-bucket
|
||
S3_ACCESS_KEY_ID=your-access-key
|
||
S3_SECRET_ACCESS_KEY=your-secret-key
|
||
|
||
# ============================================
|
||
# Redis 缓存配置
|
||
# ============================================
|
||
# 首次部署时可留空,后续可在“系统设置 -> Redis 缓存”中配置默认/常州两套缓存库。
|
||
# 运行时优先使用系统库配置:识别到 192.168.150.234 服务器优先常州缓存库,其他服务器优先默认缓存库;
|
||
# 两套系统库 Redis 都不可用时,才使用下面的 .env 配置兜底。
|
||
REDIS_HOST=
|
||
REDIS_PORT=6379
|
||
REDIS_PASSWORD=
|
||
REDIS_DB=0
|
||
# 默认 stored 表示自动选择系统库 Redis;也可临时指定 default/changzhou/env。
|
||
REDIS_RUNTIME_PROFILE=stored
|
||
CHANGZHOU_REDIS_SERVER_IPS=192.168.150.234
|
||
# 企划功能页 GET 响应缓存:默认 23 小时,命中后可避免重复扫企划库/业务库。
|
||
PLANNING_PAGE_RESPONSE_CACHE_REDIS_TTL_SECONDS=82800
|
||
# 企划 MAY 商品数据实体快照:每天 08:30 生成,页面优先读取 planning_may_product_snapshot_di。
|
||
PLANNING_MAY_PRODUCT_SNAPSHOT_ENABLED=true
|
||
PLANNING_MAY_PRODUCT_SNAPSHOT_CRON=30 8 * * *
|
||
PLANNING_MAY_PRODUCT_SNAPSHOT_CHUNK_SIZE=200
|
||
|
||
# ============================================
|
||
# 企划数据库双接口配置
|
||
# ============================================
|
||
# 默认 auto:识别到 PLANNING_DB_LOCAL_SERVER_IPS 中的本机 IP 时使用系统设置里的企划数据库;
|
||
# 非本机时优先使用下面的公网企划数据库配置,避免不同服务器继续连本机内网接口。
|
||
PLANNING_DB_RUNTIME_PROFILE=auto
|
||
PLANNING_DB_LOCAL_SERVER_IPS=192.168.150.234
|
||
PLANNING_PUBLIC_DB_HOST=
|
||
PLANNING_PUBLIC_DB_PORT=60023
|
||
PLANNING_PUBLIC_DB_NAME=planning_database
|
||
PLANNING_PUBLIC_DB_USER=
|
||
PLANNING_PUBLIC_DB_PASSWORD=
|
||
PLANNING_PUBLIC_DB_SSL=false
|
||
PLANNING_PUBLIC_DB_CHARSET=utf8mb4
|
||
|
||
# ============================================
|
||
# 市场洞察专用镜像库
|
||
# ============================================
|
||
# 配置后,仅市场洞察/市场复刻相关页面读取该库;未配置时仍回退到企划数据库。
|
||
MARKET_REPLICA_DB_HOST=
|
||
MARKET_REPLICA_DB_PORT=3306
|
||
MARKET_REPLICA_DB_NAME=yuce_market_local
|
||
MARKET_REPLICA_DB_USER=
|
||
MARKET_REPLICA_DB_PASSWORD=
|
||
MARKET_REPLICA_DB_SSL=false
|
||
MARKET_REPLICA_DB_CHARSET=utf8mb4
|
||
|
||
# 新 yuce_market -> 本机镜像库同步脚本配置。真实账号建议放到 backend/runtime/market-sync/.env。
|
||
MARKET_SYNC_SOURCE_HOST=
|
||
MARKET_SYNC_SOURCE_PORT=3306
|
||
MARKET_SYNC_SOURCE_DATABASE=yuce_market
|
||
MARKET_SYNC_SOURCE_USER=
|
||
MARKET_SYNC_SOURCE_PASSWORD=
|
||
MARKET_SYNC_TARGET_HOST=127.0.0.1
|
||
MARKET_SYNC_TARGET_PORT=3306
|
||
MARKET_SYNC_TARGET_DATABASE=yuce_market_local
|
||
MARKET_SYNC_TARGET_USER=
|
||
MARKET_SYNC_TARGET_PASSWORD=
|
||
|
||
# ============================================
|
||
# 淘宝详情 Plus 对外查询 API
|
||
# ============================================
|
||
# 多个 key 用英文逗号分隔。请求时建议使用 Header: x-api-key: <key>
|
||
TAOBAO_DETAIL_PLUS_API_KEYS=
|
||
|
||
# ============================================
|
||
# 工单通知系统连接配置
|
||
# ============================================
|
||
# 系统设置中保存的配置优先;下面仅作为首次部署或系统库不可用时的兜底。
|
||
WORK_ORDER_BASE_URL=
|
||
WORK_ORDER_SIGN_KEY=
|
||
WORK_ORDER_APP_KEY=
|
||
WORK_ORDER_APP_SECRET=
|
||
WORK_ORDER_TOKEN_PATH=/api/auth/accessToken
|
||
WORK_ORDER_CREATE_PATH=/api/workorder/create
|
||
|
||
# ============================================
|
||
|
||
# ============================================
|
||
# 公司商品编码对外接口(仅后端保存,禁止下发到前端)
|
||
# ============================================
|
||
PRODUCT_CODE_PUBLIC_API_KEY=
|
||
PRODUCT_CODE_PUBLIC_API_BASE_URL=https://yyd.jiansuntuzhi.cn
|
||
PRODUCT_CODE_PUBLIC_API_TIMEOUT_MS=30000
|
||
|
||
# ============================================
|
||
# 服务器配置
|
||
# ============================================
|
||
# ============================================
|
||
# 1688 ???????
|
||
# ============================================
|
||
# Linux ?????????????? /www/wwwroot/script_1688
|
||
ALI1688_BRIDGE_ROOT=/www/wwwroot/script_1688
|
||
ALI1688_BRIDGE_ENV_PATH=/www/wwwroot/script_1688/.env
|
||
ALI1688_BRIDGE_ACCOUNTS_PATH=/www/wwwroot/script_1688/.local/auth/1688_accounts.json
|
||
ALI1688_BRIDGE_PYTHON=/www/wwwroot/script_1688/.venv/bin/python
|
||
ALI1688_CONTROL_CENTER_STORE_PATH=./database/ali1688_control_center.json
|
||
|
||
# nanting-pro 测款商品编码接口。API Key 只能配置在后端,不得下发前端。
|
||
PRODUCT_CODE_API_BASE_URL=https://yyd.jiansuntuzhi.cn
|
||
PRODUCT_CODE_API_KEY=
|
||
PRODUCT_CODE_API_TIMEOUT_MS=300000
|
||
# 编码请求异常中断后,超过该时间可使用同一 1688 商品 ID 协调重试。
|
||
PRODUCT_CODE_CLAIM_TTL_SECONDS=360
|
||
|
||
# ============================================
|
||
# 1688 以图搜款 Key 到期通知
|
||
# ============================================
|
||
# 仅作为数据库尚未配置时的迁移/故障兜底。系统设置保存后优先读取数据库。
|
||
# 通知中心会为本项目单独分配 project code / secret,不得复用其他项目密钥。
|
||
YYD_NOTIFICATION_CENTER_URL=https://sc.jiansun.vip/notification-center
|
||
YYD_NOTIFICATION_PROJECT_CODE=
|
||
YYD_NOTIFICATION_PROJECT_SECRET=
|
||
# 兼容通知中心开通结果使用的变量名:
|
||
# YYD_NOTIFICATION_CENTER_PROJECT_CODE=
|
||
# YYD_NOTIFICATION_CENTER_PROJECT_SECRET=
|
||
YYD_NOTIFICATION_TIMEOUT_MS=15000
|
||
ALIBABA_1688_IMAGE_SEARCH_EXPIRY_RECIPIENT_ALIAS=苏适
|
||
ALIBABA_1688_IMAGE_SEARCH_SETTINGS_URL=https://pddg.jiansuntuzhi.cn/settings?tab=alibaba1688ImageSearch
|
||
ALIBABA_1688_IMAGE_SEARCH_EXPIRY_CRON=0 9 * * *
|
||
DISABLE_ALIBABA_1688_IMAGE_SEARCH_EXPIRY_NOTIFICATION=false
|
||
|
||
# External image generation service. One image request may run for up to
|
||
# 15 minutes; main-image batches send at most five requests concurrently.
|
||
SELECTION_IMAGE_GEN_BASE_URL=https://ai.yydd.ai
|
||
SELECTION_IMAGE_GEN_API_KEY=
|
||
SELECTION_IMAGE_GEN_TIMEOUT_MS=900000
|
||
|
||
PORT=4000
|
||
NODE_ENV=development
|
||
|
||
# ============================================
|
||
# 火山向量定时任务
|
||
# ============================================
|
||
ARK_API_KEY=
|
||
ARK_BASE_URL=https://ark.cn-beijing.volces.com/api/v3
|
||
EMBEDDING_MODEL=doubao-embedding-vision-250615
|
||
TAOBAO_PRODUCT_EMBEDDING_ENABLED=true
|
||
TAOBAO_PRODUCT_EMBEDDING_CRON=0 2 * * *
|
||
TAOBAO_PRODUCT_EMBEDDING_BATCH_SIZE=100
|
||
TAOBAO_PRODUCT_EMBEDDING_CONCURRENCY=2
|
||
TAOBAO_PRODUCT_EMBEDDING_REQUEST_TIMEOUT_MS=120000
|
||
TAOBAO_PRODUCT_EMBEDDING_LOCK_WAIT_SECONDS=1
|
||
|
||
# 榜单数据分析快照。不同项目共用原始企划库时,应配置独立表名与任务锁。
|
||
PLANNING_RANK_BOARD_ITEM_SNAPSHOT_TABLE=planning_rank_board_item_snapshot_di
|
||
PLANNING_RANK_BOARD_DIMENSION_SNAPSHOT_TABLE=planning_rank_board_dimension_snapshot_di
|
||
PLANNING_RANK_BOARD_AGGREGATE_SNAPSHOT_TABLE=planning_rank_board_aggregate_snapshot_di
|
||
PLANNING_RANK_BOARD_SNAPSHOT_LOG_TABLE=planning_rank_board_snapshot_sync_log
|
||
PLANNING_RANK_BOARD_SNAPSHOT_LOCK_KEY=planning_rank_board_snapshot_daily
|
||
PLANNING_RANK_BOARD_SNAPSHOT_CRON=0 0 * * *
|
||
PLANNING_RANK_BOARD_SNAPSHOT_TIMEZONE=Asia/Shanghai
|
||
|
||
# 多实例部署时可禁用此实例的后台任务,避免重复同步共享业务库
|
||
ENABLE_BACKGROUND_JOBS=true
|