Files
AIOA/deploy/compose/compose.yaml
T
selfrelease 57c8a26147 feat: LLM多阶段交互式Schema生成 + UI布局优化
- AI Service: 多阶段对话模型(理解→澄清→生成→校验→确认),支持对话历史和当前Schema上下文
- Backend: 适配多阶段AI模型,Gateway/Service/Controller传递history和currentSchema
- Frontend: AiDesignerChat组件重写,支持阶段徽章、快速回复、Schema校验展示
- Frontend: 表单/流程设计器布局优化,AI助手和Schema预览作为独立列
- Frontend: 流程设计器元数据和模式选择器合并为一行
- Keycloak: 自定义登录主题(中文化)
- 修复CSS媒体查询括号平衡问题
2026-07-19 09:36:42 +08:00

73 lines
2.0 KiB
YAML

name: aioa
services:
postgres:
image: postgres:17.5-alpine
environment:
POSTGRES_DB: ${POSTGRES_DB:-aioa}
POSTGRES_USER: ${POSTGRES_USER:-aioa}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-change-me}
ports:
- "15432:5432"
volumes:
# Versioned volume avoids accidentally reusing a database initialized
# by another local project or an earlier credential set.
- postgres-data-v1:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 5s
retries: 20
redis:
image: redis:8.0.2-alpine
command: ["redis-server", "--appendonly", "yes"]
ports:
- "6379:6379"
volumes:
- redis-data:/data
keycloak:
image: quay.io/keycloak/keycloak:26.2.5
command: ["start-dev", "--import-realm"]
environment:
KC_BOOTSTRAP_ADMIN_USERNAME: ${KEYCLOAK_ADMIN:-admin}
KC_BOOTSTRAP_ADMIN_PASSWORD: ${KEYCLOAK_ADMIN_PASSWORD:-change-me}
KC_HOSTNAME: http://localhost:8081
ports:
- "8081:8080"
volumes:
- ./keycloak/realm-aioa.json:/opt/keycloak/data/import/realm-aioa.json:ro
- ./keycloak/themes/aioa:/opt/keycloak/themes/aioa:ro
minio:
image: minio/minio:RELEASE.2025-06-13T11-33-47Z
command: ["server", "/data", "--console-address", ":9001"]
environment:
MINIO_ROOT_USER: ${MINIO_ROOT_USER:-minioadmin}
MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD:-change-me-now}
ports:
- "9000:9000"
- "9001:9001"
volumes:
- minio-data:/data
ai-service:
build:
context: ../../ai-service
environment:
QWEN_API_KEY: ${QWEN_API_KEY:-}
QWEN_MODEL: ${QWEN_MODEL:-qwen-plus}
ports:
- "8000:8000"
healthcheck:
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8000/health')"]
interval: 10s
timeout: 5s
retries: 10
volumes:
postgres-data-v1:
redis-data:
minio-data: