103 lines
2.3 KiB
YAML
103 lines
2.3 KiB
YAML
|
|
# Sales Chat Plugin for Tailchat
|
||
|
|
# Docker Compose Configuration
|
||
|
|
|
||
|
|
services:
|
||
|
|
# MongoDB - 数据库
|
||
|
|
mongo:
|
||
|
|
image: mongo:7
|
||
|
|
container_name: tailchat-mongo
|
||
|
|
restart: unless-stopped
|
||
|
|
environment:
|
||
|
|
MONGO_INITDB_ROOT_USERNAME: tailchat
|
||
|
|
MONGO_INITDB_ROOT_PASSWORD: tailchat_secret
|
||
|
|
MONGO_INITDB_DATABASE: tailchat
|
||
|
|
volumes:
|
||
|
|
- mongo_data:/data/db
|
||
|
|
- ./init-mongo.js:/docker-entrypoint-initdb.d/init-mongo.js:ro
|
||
|
|
ports:
|
||
|
|
- "27017:27017"
|
||
|
|
networks:
|
||
|
|
- tailchat-network
|
||
|
|
|
||
|
|
# Redis - 缓存
|
||
|
|
redis:
|
||
|
|
image: redis:7-alpine
|
||
|
|
container_name: tailchat-redis
|
||
|
|
restart: unless-stopped
|
||
|
|
volumes:
|
||
|
|
- redis_data:/data
|
||
|
|
ports:
|
||
|
|
- "6379:6379"
|
||
|
|
networks:
|
||
|
|
- tailchat-network
|
||
|
|
|
||
|
|
# MinIO - 文件存储
|
||
|
|
minio:
|
||
|
|
image: minio/minio:latest
|
||
|
|
container_name: tailchat-minio
|
||
|
|
restart: unless-stopped
|
||
|
|
environment:
|
||
|
|
MINIO_ROOT_USER: tailchat
|
||
|
|
MINIO_ROOT_PASSWORD: tailchat_secret
|
||
|
|
command: server /data --console-address ":9001"
|
||
|
|
volumes:
|
||
|
|
- minio_data:/data
|
||
|
|
ports:
|
||
|
|
- "9000:9000"
|
||
|
|
- "9001:9001"
|
||
|
|
networks:
|
||
|
|
- tailchat-network
|
||
|
|
|
||
|
|
# Tailchat Server - 主服务(包含 Sales Chat 插件)
|
||
|
|
tailchat:
|
||
|
|
build:
|
||
|
|
context: .
|
||
|
|
dockerfile: Dockerfile
|
||
|
|
container_name: tailchat-server
|
||
|
|
restart: unless-stopped
|
||
|
|
depends_on:
|
||
|
|
- mongo
|
||
|
|
- redis
|
||
|
|
- minio
|
||
|
|
environment:
|
||
|
|
# 数据库配置
|
||
|
|
MONGO_URL: mongodb://tailchat:tailchat_secret@mongo:27017/tailchat?authSource=admin
|
||
|
|
REDIS_URL: redis://redis:6379
|
||
|
|
|
||
|
|
# 文件存储
|
||
|
|
MINIO_URL: minio:9000
|
||
|
|
MINIO_USER: tailchat
|
||
|
|
MINIO_PASS: tailchat_secret
|
||
|
|
MINIO_BUCKET_NAME: tailchat
|
||
|
|
|
||
|
|
# 认证
|
||
|
|
SECRET: ${JWT_SECRET:-change_this_secret_in_production}
|
||
|
|
|
||
|
|
# Sales Chat 插件配置
|
||
|
|
INVITE_BASE_URL: ${INVITE_BASE_URL:-http://localhost:3000}
|
||
|
|
|
||
|
|
# 管理员配置
|
||
|
|
ADMIN_USER: tailchat
|
||
|
|
ADMIN_PASS: com.msgbyte.tailchat
|
||
|
|
|
||
|
|
# 日志
|
||
|
|
LOG_LEVEL: info
|
||
|
|
|
||
|
|
# 服务发现 —— 同时加载 services 和 plugins 目录
|
||
|
|
SERVICEDIR: services,plugins
|
||
|
|
|
||
|
|
PORT: 3000
|
||
|
|
ports:
|
||
|
|
- "3000:3000"
|
||
|
|
networks:
|
||
|
|
- tailchat-network
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
mongo_data:
|
||
|
|
redis_data:
|
||
|
|
minio_data:
|
||
|
|
|
||
|
|
networks:
|
||
|
|
tailchat-network:
|
||
|
|
driver: bridge
|