services: capacity-app: image: capacity-report-app:latest container_name: capacity-report-app restart: unless-stopped ports: - "19081:9081" volumes: - ./cache:/app/cache - ./Configure.json:/app/Configure.json - ./ReportScript.sql:/app/ReportScript.sql - ./logs:/var/log/supervisor environment: - TZ=Asia/Shanghai - PYTHONUNBUFFERED=1 - SUPERVISOR_ENABLED=1 depends_on: capacity-mysql: condition: service_healthy networks: - capacity-network capacity-mysql: image: mysql:8.0.44 container_name: capacity-mysql restart: unless-stopped ports: - "13306:3306" volumes: - capacity-mysql-data:/var/lib/mysql - ./mysql/conf.d:/etc/mysql/conf.d:ro - ./mysql/init:/docker-entrypoint-initdb.d:ro environment: - TZ=Asia/Shanghai - MYSQL_ROOT_PASSWORD=gmcc123 - MYSQL_DATABASE=CapacityReport command: - --character-set-server=utf8mb4 - --collation-server=utf8mb4_unicode_ci - --local-infile=ON - --secure-file-priv= - --max_allowed_packet=256M - --innodb_buffer_pool_size=512M - --innodb_log_file_size=128M - --innodb_flush_log_at_trx_commit=2 - --sync_binlog=0 networks: - capacity-network healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-pgmcc123"] interval: 10s timeout: 5s retries: 5 start_period: 30s networks: capacity-network: driver: bridge volumes: capacity-mysql-data: driver: local