version: '3.8' services: # FastAPI 应用 chat-ai-api: build: context: . dockerfile: Dockerfile image: chat-ai-api:latest container_name: chat-ai-api ports: - "8000:8000" environment: # API 配置 ARK_API_KEY: ${ARK_API_KEY} ARK_BASE_URL: ${ARK_BASE_URL} MODEL_NAME: ${MODEL_NAME} ROLE_DESCRIPTION: ${ROLE_DESCRIPTION} # JWT 配置 SECRET_KEY: ${SECRET_KEY} ALGORITHM: ${ALGORITHM} ACCESS_TOKEN_EXPIRE_MINUTES: ${ACCESS_TOKEN_EXPIRE_MINUTES:-30} # MongoDB 配置(云服务) SOUYUE_MONGO_URI: ${SOUYUE_MONGO_URI} ARK_LOGS_MONGO_URI: ${ARK_LOGS_MONGO_URI} # Redis 配置(云服务) REDIS_HOST: ${REDIS_HOST} REDIS_PORT: ${REDIS_PORT:-6379} # 应用配置 LOG_LEVEL: ${LOG_LEVEL:-info} ENVIRONMENT: ${ENVIRONMENT:-production} restart: unless-stopped healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/docs"] interval: 30s timeout: 10s retries: 3 start_period: 5s networks: default: driver: bridge