Add docker-mariadb

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2025-06-13 12:40:26 +01:00
parent 58d4f9e8bb
commit ea0113c10a
4 changed files with 85 additions and 3 deletions

View File

@@ -0,0 +1,39 @@
#!/bin/sh
set -o errexit
set -o nounset
MYSQL_USER="${MYSQL_USER:-mariadb}"
MYSQL_PASSWORD="${MYSQL_PASSWORD:-mariadb}"
MYSQL_ROOT_PASSWORD="${MYSQL_ROOT_PASSWORD:-$MYSQL_PASSWORD}"
MYSQL_DB="${MYSQL_DB:-$MYSQL_USER}"
export DATADIR="${DATADIR:-/var/lib/mysql}"
if [ ! -f "$DATADIR/mysql_upgrade_info" ]; then
mariadb-install-db --datadir="$DATADIR" --skip-test-db
mariadbd --user=root --datadir="$DATADIR" --skip-networking --skip-grant-tables &
pid="$!"
while ! mariadb --protocol=socket -e "
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '$MYSQL_ROOT_PASSWORD';
CREATE USER '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD';
GRANT ALL PRIVILEGES ON *.* TO '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD' WITH GRANT OPTION;
CREATE DATABASE \`$MYSQL_DB\`;
"; do
sleep 0.1
done
kill -QUIT "$pid"
wait "$pid" || true
fi
trap 'kill -QUIT "$pid"' INT
mariadbd --user=root --datadir="$DATADIR" "$@" &
pid=$!
wait "$pid"
exit $?