version: '3.8' services: # MySQL 8.0 服务 mysql: image: mysql:8.0 container_name: mysql_db restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-lsxd2026} MYSQL_DATABASE: ${MYSQL_DATABASE:-myapp} MYSQL_USER: ${MYSQL_USER:-myuser} MYSQL_PASSWORD: ${MYSQL_PASSWORD:-mypassword} ports: - "3306:3306" volumes: - mysql_data:/var/lib/mysql - ./mysql/my.cnf:/etc/mysql/conf.d/my.cnf networks: - ai_scheduler_network command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --max_connections=1000 # MongoDB 服务 mongodb: image: mongo:latest container_name: mongodb restart: unless-stopped environment: MONGO_INITDB_ROOT_USERNAME: ${MONGO_ROOT_USERNAME:-root} MONGO_INITDB_ROOT_PASSWORD: ${MONGO_ROOT_PASSWORD:-lsxd2026123} ports: - "27017:27017" volumes: - mongodb_data:/data/db command: --auth --bind_ip_all # 允许所有IP连接 networks: - ai_scheduler_network # Redis 服务up redis: image: redis:alpine container_name: redis restart: unless-stopped command: redis-server --requirepass ${REDIS_PASSWORD:-redispassword123} --bind 0.0.0.0 ports: - "6379:6379" volumes: - redis_data:/data - ./redis/redis.conf:/usr/local/etc/redis/redis.conf networks: - ai_scheduler_network networks: ai_scheduler_network: driver: bridge volumes: mysql_data: driver: local mongodb_data: driver: local redis_data: driver: local