Files
server-core/serverrun/.env.example
T

105 lines
4.8 KiB
Bash
Raw Normal View History

# ============================================================
# 云超服三容器业务编排环境变量(serverrun/.env,三个业务容器共享 env_file)
# 复制本文件为 .env 后按环境填入实际值:
# cp .env.example .env
#
# 默认值 = 本地 Docker 基础设施(serverrun/mysql、redis、mqtt 子目录编排):
# 先 docker network create opc-network,再启动基础设施,业务容器经
# 容器名(opc-mysql / opc-redis / opc-emqx+ 内部端口互访。
# 生产环境:替换为外部服务器地址(每段注释附 47.108.226.213 示例)。
#
# 容器间通过 compose 服务名互访(不再是 127.0.0.1 回环):
# opc-server → http://opc-compute:3000 / http://opc-im:8101
# ============================================================
# ─────────────────────────────────────────────
# 1. opc-server(对外 :8090)—— server-core 段
# 完整变量清单见 server-core/.env.example
# ─────────────────────────────────────────────
# MySQL(本地 Dockeropc-mysql 容器内部端口 3306;宿主机访问用 localhost:8091
# 生产:PINEAGENTS_MYSQL_HOST=47.108.226.213 / PINEAGENTS_MYSQL_PORT=8091
PINEAGENTS_MYSQL_HOST=opc-mysql
PINEAGENTS_MYSQL_PORT=3306
PINEAGENTS_MYSQL_USER=opc
PINEAGENTS_MYSQL_PASSWORD=jjjsgysyujkwjwgb
PINEAGENTS_MYSQL_DB=opc
PINEAGENTS_DEMO_DATABASE_URL=mysql+asyncmy://opc:jjjsgysyujkwjwgb@opc-mysql:3306/opc?charset=utf8mb4
# Redis(本地 Dockeropc-redis,密码见 redis/docker-compose.yml 的 requirepass
# 生产:PINEAGENTS_REDIS_HOST=47.108.226.213 / PINEAGENTS_REDIS_PORT=6379
PINEAGENTS_REDIS_HOST=opc-redis
PINEAGENTS_REDIS_PORT=6379
PINEAGENTS_REDIS_PASSWORD=redis_pass
# 服务间地址(拆分后必须指向 compose 服务名,禁止回环 127.0.0.1
PINEAGENTS_COMPUTE_BASE_URL=http://opc-compute:3000
PINEAGENTS_IM_BASE_URL=http://opc-im:8101
PINEAGENTS_IM_WS_URL=ws://opc-im:8101/ws
# 内部服务鉴权 token(与 opc-im / opc-compute 一致)
PINEAGENTS_INTERNAL_TOKEN=000000000000000000000000000
PINEAGENTS_COMPUTE_RELAY_TOKEN=000000000000000000000000001
PINEAGENTS_COMPUTE_ADMIN_TOKEN=
# 对外地址 / 桌面端自动更新公钥(与 agent-desktop/mykey/tauri-signer.key 配对)
PUBLIC_BASE_URL=https://opc.pinesound.cn
DESKTOP_UPDATER_PUBKEY=
# 微信支付 / 短信 / OSS 等按需补充(见 server-core/.env.example 注释)
# WX_APPID=
# WX_SECRET=
# OSS_ACCESS_KEY=
# OSS_SECRET_KEY=
# OSS_ENDPOINT=
# OSS_BUCKET=
# ─────────────────────────────────────────────
# 2. opc-im(容器内 :8101,不对外)—— im-service 段
# 完整变量清单见 im-service/.env.example
# ─────────────────────────────────────────────
# 监听地址:容器内必须 0.0.0.0Dockerfile CMD 已显式传入,此处兜底 main.py 启动方式)
IM_HOST=0.0.0.0
IM_PORT=8101
# 共享 opc MySQL(本地 Docker
IM_DATABASE_URL=mysql+asyncmy://opc:jjjsgysyujkwjwgb@opc-mysql:3306/opc?charset=utf8mb4
# MQTT / EMQX 总线(本地 Dockeropc-emqx 容器内部 1883;生产 MQTT_BROKER_HOST=47.108.226.213 / MQTT_BROKER_PORT=8095
IM_MQTT_ENABLED=true
MQTT_BROKER_HOST=opc-emqx
MQTT_BROKER_PORT=1883
MQTT_USERNAME=opc
MQTT_PASSWORD=Opc123!
# EMQX 管理 API(本地 http://opc-emqx:18083;生产 IM_EMQX_API_URL=https://47.108.226.213:8096
IM_EMQX_API_URL=http://opc-emqx:18083
IM_EMQX_API_KEY=
IM_EMQX_API_SECRET=
# JWT(与 server-core 一致)与内部令牌(与 server-core 一致)
PINEAGENTS_DEMO_JWT_SECRET=your_jwt_secret_at_least_32_chars
PINEAGENTS_INTERNAL_TOKEN=000000000000000000000000000
IM_INTERNAL_TOKEN=
# 智能客服 LLM(可选)
IM_CS_LLM_ENABLED=false
# 桌面端 MQTT over WebSocket 直连入口(本地:宿主 localhost:8083;生产 47.108.226.213:8097
IM_MQTT_PUBLIC_HOST=localhost
IM_MQTT_PUBLIC_WS_PORT=8083
# ─────────────────────────────────────────────
# 3. opc-compute(容器内 :3000,不对外)—— compute 段
# 完整变量清单见 compute/.env.example
# ─────────────────────────────────────────────
# 与 opc-server 一致
PINEAGENTS_INTERNAL_TOKEN=000000000000000000000000000
# 数据库(本地 SQLite 落在挂载卷 /app/serverdata/compute.db;如需 MySQL 改 DATABASE_URL
DATABASE_URL=sqlite+aiosqlite:////app/serverdata/compute.db
PORT=3000
# COMPUTE_UPSTREAM_TIMEOUT=