furniture-3d-system-Wu/docker-compose.test.yml
WuYongJie ff41839238 feat: 实现Apple风格UI系统和产品上传功能
- 完整实现Apple HIG 2025设计系统
- 添加Modal弹窗组件(毛玻璃效果、流畅动画)
- 添加FileUpload文件上传组件(拖拽、批量上传、进度显示)
- 实现产品上传功能(支持DWG/GLB/GLTF文件)
- 优化产品列表展示(可折叠的产品+SKU结构)
- 实现Tab切换功能(3D模型管理、五金件、BOM、文档)
- 修复主题系统hydration错误
- 优化按钮和间距,符合Apple设计规范
- 添加分享页面的Apple风格重设计
- 创建测试数据脚本
2025-12-12 20:16:41 +08:00

112 lines
2.6 KiB
YAML

# 3D 家具安装展示系统 - 测试配置
# 用于测试部署脚本,使用简化的服务配置
version: '3.8'
services:
# PostgreSQL 数据库
postgres:
image: postgres:15-alpine
container_name: furniture-postgres-test
restart: unless-stopped
environment:
- POSTGRES_DB=furniture_db
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=${DB_PASSWORD:-test_password_123}
- PGDATA=/var/lib/postgresql/data/pgdata
command: >
postgres
-c shared_buffers=128MB
-c max_connections=50
volumes:
- postgres-test-data:/var/lib/postgresql/data
networks:
- furniture-test-network
ports:
- "5432:5432"
mem_limit: 512m
cpus: 1.0
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d furniture_db"]
interval: 10s
timeout: 5s
retries: 5
# MinIO 对象存储
minio:
image: minio/minio:latest
container_name: furniture-minio-test
restart: unless-stopped
environment:
- MINIO_ROOT_USER=${MINIO_USER:-admin}
- MINIO_ROOT_PASSWORD=${MINIO_PASSWORD:-test_minio_password_123}
command: server /data --console-address ":9001"
volumes:
- minio-test-data:/data
networks:
- furniture-test-network
ports:
- "9000:9000"
- "9001:9001"
mem_limit: 512m
cpus: 0.5
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
interval: 30s
timeout: 20s
retries: 3
# Redis 缓存
redis:
image: redis:7-alpine
container_name: furniture-redis-test
restart: unless-stopped
command: >
redis-server
--maxmemory 200mb
--maxmemory-policy allkeys-lru
volumes:
- redis-test-data:/data
networks:
- furniture-test-network
ports:
- "6379:6379"
mem_limit: 256m
cpus: 0.5
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 3s
retries: 3
# Nginx 测试服务 (模拟前端)
nginx:
image: nginx:alpine
container_name: furniture-nginx-test
restart: unless-stopped
ports:
- "${WEB_PORT:-3000}:80"
networks:
- furniture-test-network
mem_limit: 128m
cpus: 0.5
healthcheck:
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:80"]
interval: 30s
timeout: 10s
retries: 3
volumes:
- ./test-html:/usr/share/nginx/html:ro
networks:
furniture-test-network:
driver: bridge
volumes:
postgres-test-data:
driver: local
minio-test-data:
driver: local
redis-test-data:
driver: local