version: '3.8' services: xingbang-app: build: context: . dockerfile: Dockerfile container_name: xingbang-ai-native ports: - "8002:8002" # 后端 API - "3000:3000" # 前端 UI environment: - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY} - DEEPSEEK_MODEL=${DEEPSEEK_MODEL:-deepseek-chat} - DEEPSEEK_BASE_URL=${DEEPSEEK_BASE_URL:-https://api.deepseek.com} - ERP_DB_HOST=${ERP_DB_HOST} - ERP_DB_PORT=${ERP_DB_PORT:-5432} - ERP_DB_NAME=${ERP_DB_NAME} - ERP_DB_USER=${ERP_DB_USER} - ERP_DB_PASSWORD=${ERP_DB_PASSWORD} - ERP_DB_SSL_MODE=${ERP_DB_SSL_MODE:-require} volumes: - xingbang-data:/app/backend/xingbang_data - xingbang-logs:/app/backend/logs secrets: - erp_db_password - deepseek_api_key restart: unless-stopped networks: - xingbang-network # (可选)如果需要本地测试数据库 # postgres: # image: postgres:15-alpine # container_name: xingbang-erp-mock # environment: # - POSTGRES_DB=xingbang_erp # - POSTGRES_USER=readonly_user # - POSTGRES_PASSWORD_FILE=/run/secrets/erp_db_password # volumes: # - postgres-data:/var/lib/postgresql/data # networks: # - xingbang-network volumes: xingbang-data: xingbang-logs: # postgres-data: networks: xingbang-network: driver: bridge secrets: erp_db_password: file: ./secrets/erp_db_password.txt deepseek_api_key: file: ./secrets/deepseek_api_key.txt