24 lines
729 B
Bash
24 lines
729 B
Bash
#!/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 "$@"
|