gongxiangp2/yedir/docker-compose.yml
chenpei d0dc94e36d feat: 将弹幕功能替换为AI聊天助手
新功能:
- 创建AI聊天助手组件(AIChatWidget)
- 支持文字+图片多模态对话
- 集成Gemini AI API
- 支持图片编辑和内容生成
- 实时对话历史管理
- 优雅的UI设计,支持黑夜模式

技术实现:
- 后端API代理Gemini API(/api/ai-chat)
- 支持最多5张图片上传
- 流式响应处理
- 对话历史管理
- Base64图片处理

配置:
- 在.env中添加Gemini API配置
- GEMINI_API_KEY
- GEMINI_API_BASE_URL
- GEMINI_MODEL

替换原弹幕功能,提供更强大的AI助手体验!
2025-10-27 17:45:37 +08:00

86 lines
2.2 KiB
YAML
Executable File

version: '3.9'
services:
app:
build:
context: .
dockerfile: Dockerfile
image: xiaogongju-app:latest
container_name: xiaogongju
restart: always
ports:
- "3231:3231"
env_file:
- .env
environment:
- NODE_ENV=production
- MONGODB_URI=${MONGODB_URI}
- INIT_DB=${INIT_DB:-false}
- MINIO_ENDPOINT=${MINIO_ENDPOINT:-s3.ap-southeast-1.amazonaws.com}
- MINIO_PORT=${MINIO_PORT:-443}
- MINIO_USE_SSL=${MINIO_USE_SSL:-true}
- MINIO_ACCESS_KEY=${MINIO_ACCESS_KEY}
- MINIO_SECRET_KEY=${MINIO_SECRET_KEY}
- MINIO_BUCKET_NAME=${MINIO_BUCKET_NAME:-yedir}
- MINIO_REGION=${MINIO_REGION:-ap-southeast-1}
- USE_S3_STORAGE=false
- AWS_SDK_LOAD_CONFIG=1
- AWS_REGION=${MINIO_REGION:-ap-southeast-1}
- PORT=3231
- REDIS_URL=redis://redis:6379
volumes:
- ./logs:/app/logs
- ./uploads:/app/uploads
- ./public/uploads:/app/public/uploads
- ./public/js/libs:/app/public/js/libs
- ./mindmap:/app/public/mindmap
- ./mind-map-main:/app/public/mind-map-main
- ./temp:/app/temp
- ./.env:/app/.env
networks:
- app-network
depends_on:
redis:
condition: service_healthy
healthcheck:
test: ["CMD", "wget", "-O-", "http://localhost:3231/api/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
deploy:
resources:
limits:
cpus: '2'
memory: 2G
redis:
image: redis:alpine
container_name: xiaogongju-redis
restart: always
volumes:
- redis-data:/data
ports:
- "6379:6379"
networks:
- app-network
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
command: redis-server --appendonly yes --save 900 1 --save 300 10 --save 60 10000
deploy:
resources:
limits:
cpus: '0.5'
memory: 512M
volumes:
redis-data:
name: xiaogongju-redis-data
networks:
app-network:
driver: bridge