#!/bin/sh set -e echo "Waiting for MySQL to be ready..." until mysql --default-character-set=utf8mb4 -h db -uroot -pwmms1234 --silent 2>/dev/null; do sleep 2 done echo "MySQL is ready." # Only run init scripts if they haven't been run yet if [ ! -f /app/.init_done ]; then echo "Running init scripts..." for f in $(ls /docker-entrypoint-initdb.d/*.sql 2>/dev/null | sort); do echo "Executing: $f" mysql --default-character-set=utf8mb4 -h db -uroot -pwmms1234 wmms < "$f" && echo "OK: $(basename $f)" || { echo "FAILED: $(basename $f)"; cat /tmp/mysql_err.log 2>/dev/null; } done touch /app/.init_done else echo "Init already done, skipping." fi echo "Starting application..." exec "$@"