NextCloud / start.sh
Artples's picture
Update start.sh
e292c55 verified
#!/usr/bin/env bash
set -euo pipefail
: "${MYSQL_DATABASE:?Set MYSQL_DATABASE}"
: "${MYSQL_USER:?Set MYSQL_USER}"
: "${MYSQL_PASSWORD:?Set MYSQL_PASSWORD}"
mkdir -p /run/mysqld
chown -R mysql:mysql /run/mysqld
if [ ! -d /var/lib/mysql/mysql ]; then
mariadb-install-db --user=mysql --datadir=/var/lib/mysql > /dev/null
fi
mariadbd-safe --datadir=/var/lib/mysql --bind-address=127.0.0.1 >/dev/null 2>&1 &
until mariadb-admin ping --silent > /dev/null 2>&1; do
sleep 1
done
mariadb -uroot <<SQL
CREATE DATABASE IF NOT EXISTS \`${MYSQL_DATABASE}\` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER IF NOT EXISTS '${MYSQL_USER}'@'%' IDENTIFIED BY '${MYSQL_PASSWORD}';
GRANT ALL PRIVILEGES ON \`${MYSQL_DATABASE}\`.* TO '${MYSQL_USER}'@'%';
CREATE USER IF NOT EXISTS '${MYSQL_USER}'@'localhost' IDENTIFIED BY '${MYSQL_PASSWORD}';
GRANT ALL PRIVILEGES ON \`${MYSQL_DATABASE}\`.* TO '${MYSQL_USER}'@'localhost';
FLUSH PRIVILEGES;
SQL
redis-server --bind 127.0.0.1 --port 6379 --protected-mode yes >/dev/null 2>&1 &
cron >/dev/null 2>&1 || true
export MYSQL_HOST=127.0.0.1
exec /entrypoint.sh "$@"