diff --git a/db/mariadb-10.3.22/Dockerfile b/db/mariadb-10.3.22/Dockerfile index 2475e5f5a6a927aee241a64e206d4b6c8c6cfd21..1d07492ed72ab44b405ccd5990a6b0593754dbc4 100644 --- a/db/mariadb-10.3.22/Dockerfile +++ b/db/mariadb-10.3.22/Dockerfile @@ -1,4 +1,4 @@ -##### +###### FROM docker.io/mariadb:10.3.22 MAINTAINER drupalci diff --git a/db/mariadb-10.3.22/conf/startup.sh b/db/mariadb-10.3.22/conf/startup.sh index 998cdc0ede0e481fd32ac02a23b4fa5dcdc323c5..75443109323259d4e262cb9d7c00b55344e4278b 100755 --- a/db/mariadb-10.3.22/conf/startup.sh +++ b/db/mariadb-10.3.22/conf/startup.sh @@ -1,5 +1,17 @@ #!/bin/bash +terminate() { + echo "Caught termination signal, shutting down..." + if [ -n "${PID}" ]; then + kill -TERM "$(pgrep -P ${PID} -x mysqld)" + wait "${PID}" + fi + echo "Shutdown complete." + exit 0 +} + +trap terminate SIGTERM SIGINT + if [ ! -f /var/lib/mysql/ibdata1 ]; then echo "rebuilding /var/lib/mysql/ibdata1" @@ -12,10 +24,12 @@ if [ ! -f /var/lib/mysql/ibdata1 ]; mysql -e "CREATE USER 'drupaltestbot'@'%' IDENTIFIED BY 'drupaltestbotpw';" mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'drupaltestbot'@'%' WITH GRANT OPTION; SELECT User FROM mysql.user; FLUSH PRIVILEGES;" echo "Grants added" - killall mysqld - wait ${PID} fi -/usr/bin/mysqld_safe; -echo "mysql died at $(date)"; - +# Start MySQL server if container restart and data is ready +if [ -z "${PID}" ]; then + /usr/bin/mysqld_safe & + PID="${!}" +fi +wait ${PID} +echo "mysql exited at $(date)"; diff --git a/db/mariadb-10.6/Dockerfile b/db/mariadb-10.6/Dockerfile index 9a9c9ac11091f18b55222ee85f28279ee1d386f4..88c467e4f070dbac8ff4679107024b6fe0560567 100644 --- a/db/mariadb-10.6/Dockerfile +++ b/db/mariadb-10.6/Dockerfile @@ -1,4 +1,4 @@ -#### +##### FROM docker.io/mariadb:10.6 MAINTAINER drupalci diff --git a/db/mariadb-10.6/conf/startup.sh b/db/mariadb-10.6/conf/startup.sh index 998cdc0ede0e481fd32ac02a23b4fa5dcdc323c5..b3ccd0b52ffcf21d6756458eba400bf79252664b 100755 --- a/db/mariadb-10.6/conf/startup.sh +++ b/db/mariadb-10.6/conf/startup.sh @@ -1,5 +1,17 @@ #!/bin/bash +terminate() { + echo "Caught termination signal, shutting down..." + if [ -n "${PID}" ]; then + kill -TERM "$(pgrep -P ${PID} -x mariadbd)" + wait "${PID}" + fi + echo "Shutdown complete." + exit 0 +} + +trap terminate SIGTERM SIGINT + if [ ! -f /var/lib/mysql/ibdata1 ]; then echo "rebuilding /var/lib/mysql/ibdata1" @@ -12,10 +24,12 @@ if [ ! -f /var/lib/mysql/ibdata1 ]; mysql -e "CREATE USER 'drupaltestbot'@'%' IDENTIFIED BY 'drupaltestbotpw';" mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'drupaltestbot'@'%' WITH GRANT OPTION; SELECT User FROM mysql.user; FLUSH PRIVILEGES;" echo "Grants added" - killall mysqld - wait ${PID} fi -/usr/bin/mysqld_safe; -echo "mysql died at $(date)"; - +# Start MySQL server if container restart and data is ready +if [ -z "${PID}" ]; then + /usr/bin/mysqld_safe & + PID="${!}" +fi +wait ${PID} +echo "mysql exited at $(date)";