This commit is contained in:
Ubuntu
2025-07-07 21:57:50 +00:00
parent 3d9075eb9a
commit 2117ce50f4
3 changed files with 44 additions and 23 deletions
+6 -2
View File
@@ -5,8 +5,12 @@ RUN apt-get update && \
rm -rf /var/lib/apt/lists/*
EXPOSE 3306
COPY conf/my.cnf /etc/mysql/my.cnf
COPY init.sh /docker-entrypoint-initdb.d/init.sh
RUN chmod +x /docker-entrypoint-initdb.d/init.sh
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh /docker-entrypoint-initdb.d/init.sh
ENTRYPOINT ["/entrypoint.sh"]
CMD ["mysqld_safe"]
+30
View File
@@ -0,0 +1,30 @@
#!/bin/bash
set -e
# Démarre MariaDB en arrière-plan pour l'initialisation
mysqld_safe --skip-networking &
sleep 5
# Vérifie si la DB est déjà initialisée
if [ ! -d "/var/lib/mysql/mysql" ]; then
echo "=> Initializing database..."
mysql_install_db --user=mysql --ldata=/var/lib/mysql
echo "=> Running init scripts..."
for f in /docker-entrypoint-initdb.d/*; do
case "$f" in
*.sh) echo "Running $f"; . "$f" ;;
*.sql) echo "Running $f"; mysql -u root < "$f" ;;
*) echo "Ignoring $f" ;;
esac
done
echo "=> Initialization done."
fi
# Stop MariaDB safe mode
mysqladmin -u root shutdown
# Redémarre MariaDB en mode normal
exec mysqld_safe
+8 -21
View File
@@ -1,27 +1,14 @@
#!/bin/bash
set -e
# Lancement du serveur en background
mysqld_safe &
echo "=> Creating WordPress database and user..."
# Attente que MariaDB soit accessible
echo "Waiting for MariaDB to start..."
until mysqladmin ping --silent; do
sleep 1
done
mysql -u root <<EOF
CREATE DATABASE IF NOT EXISTS wordpress_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER IF NOT EXISTS 'wp_user'@'%' IDENTIFIED BY 'wp_pass123';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'%';
FLUSH PRIVILEGES;
EOF
echo "MariaDB started."
# Création base + utilisateur
mysql -u root <<-EOSQL
CREATE DATABASE IF NOT EXISTS wordpress_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER IF NOT EXISTS 'wp_user'@'%' IDENTIFIED BY 'wp_pass123';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'%';
FLUSH PRIVILEGES;
EOSQL
# Tu peux ajouter ici d'autres commandes SQL si besoin
# Arrêter proprement MariaDB lancé en background
mysqladmin -u root shutdown
echo "=> WordPress database and user created!"