105 lines
4.8 KiB
Bash
105 lines
4.8 KiB
Bash
# ============================================================
|
||
# 云超服三容器业务编排环境变量(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(本地 Docker:opc-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(本地 Docker:opc-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.0(Dockerfile 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 总线(本地 Docker:opc-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=
|