From d95e88ea946626d7c7b73e884ccc12bd11c07e05 Mon Sep 17 00:00:00 2001 From: Giovanni Di Grezia Date: Mon, 23 Dec 2024 14:27:01 +0100 Subject: [PATCH] upgraded mariadb --- mariadb/10.11/Dockerfile | 9 ++++ mariadb/10.11/docker-entrypoint.sh | 67 ++++++++++++++++++++++++++++++ mariadb/10.11/repo | 6 +++ mariadb/Dockerfile | 2 +- mariadb/repo | 6 +-- 5 files changed, 86 insertions(+), 4 deletions(-) create mode 100644 mariadb/10.11/Dockerfile create mode 100644 mariadb/10.11/docker-entrypoint.sh create mode 100644 mariadb/10.11/repo diff --git a/mariadb/10.11/Dockerfile b/mariadb/10.11/Dockerfile new file mode 100644 index 0000000..d974704 --- /dev/null +++ b/mariadb/10.11/Dockerfile @@ -0,0 +1,9 @@ +FROM almalinux:9 +COPY repo /etc/yum.repos.d/MariaDB.repo +RUN yum update -y +RUN yum install MariaDB-server MariaDB-client -y +RUN /bin/rm -R /var/lib/mysql/* +COPY docker-entrypoint.sh / +RUN chmod +x /docker-entrypoint.sh +ENTRYPOINT ["/docker-entrypoint.sh"] +CMD ["mysqld"] diff --git a/mariadb/10.11/docker-entrypoint.sh b/mariadb/10.11/docker-entrypoint.sh new file mode 100644 index 0000000..8a55cf4 --- /dev/null +++ b/mariadb/10.11/docker-entrypoint.sh @@ -0,0 +1,67 @@ +#!/bin/bash + + +if [[ (! -z "${MYSQL_DAEMON_USER}" ) && ( "${MYSQL_DAEMON_USER}" != "root" ) ]]; then + useradd -r -s /bin/false $MYSQL_DAEMON_USER + if [[ ! -z "${MYSQL_DAEMON_USER_UID}" ]]; then + usermod -u $MYSQL_DAEMON_USER_UID $MYSQL_DAEMON_USER + fi + if [[ ! -z "${MYSQL_DAEMON_USER_GID}" ]]; then + groupmod -g $MYSQL_DAEMON_USER_GID $MYSQL_DAEMON_USER + fi +fi + +DBEXIST=1 +if [ ! -d "/var/lib/mysql/mysql" ]; then + DBEXIST=0 + echo "Creating system tables" + if [[ ! -z "${MYSQL_DAEMON_USER}" ]]; then + mysql_install_db --user=$MYSQL_DAEMON_USER + else + mysql_install_db + fi + +else + echo "Skipping system tables creation. Chowning Data" + if [[ ! -z "${MYSQL_DAEMON_USER}" ]]; then + chown -R $(id -u ${MYSQL_DAEMON_USER}):$(id -g ${MYSQL_DAEMON_USER}) /var/lib/mysql + else + chown -R $(id -u):$(id -g) /var/lib/mysql + fi + +fi + +if [[ ! -z "${MYSQL_DAEMON_USER}" ]]; then + runuser -u ${MYSQL_DAEMON_USER} -- $@ --socket=/tmp/mysql.sock --bind-address=0.0.0.0 & +else + $@ --user=root --socket=/tmp/mysql.sock -bind-address=0.0.0.0 & +fi + + +if [[ $DBEXIST -eq 0 ]]; then + + MYSQLSTARTED=0 + + while [[ $MYSQLSTARTED -eq 0 ]] + do + if [[ ! -z "${MYSQL_ROOT_PASSWORD}" ]]; then + mysql -u root -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}'" --socket=/tmp/mysql.sock + else + mysql -u root -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'default'" --socket=/tmp/mysql.sock + fi + + if [ $? -eq 0 ]; then + MYSQLSTARTED=1 + echo "DB Root Password set" + else + echo "Trying to set DB Root Password" + sleep 3 + fi + done +else + echo "Skipping DB Root Password setting" +fi + +wait + + diff --git a/mariadb/10.11/repo b/mariadb/10.11/repo new file mode 100644 index 0000000..e036c24 --- /dev/null +++ b/mariadb/10.11/repo @@ -0,0 +1,6 @@ +# http://downloads.mariadb.org/mariadb/repositories/ +[mariadb] +name = MariaDB +baseurl = https://rpm.mariadb.org/10.11/rhel/$releasever/$basearch +gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB +gpgcheck=1 \ No newline at end of file diff --git a/mariadb/Dockerfile b/mariadb/Dockerfile index c899766..d974704 100644 --- a/mariadb/Dockerfile +++ b/mariadb/Dockerfile @@ -1,4 +1,4 @@ -FROM centos:7 +FROM almalinux:9 COPY repo /etc/yum.repos.d/MariaDB.repo RUN yum update -y RUN yum install MariaDB-server MariaDB-client -y diff --git a/mariadb/repo b/mariadb/repo index 2a89f98..acd6fbb 100644 --- a/mariadb/repo +++ b/mariadb/repo @@ -1,7 +1,7 @@ -# MariaDB 10.4 CentOS repository list - created 2020-06-11 09:49 UTC # http://downloads.mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB -baseurl = http://yum.mariadb.org/10.4/centos7-amd64 -gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB +baseurl = https://rpm.mariadb.org/11.4/centos/$releasever/$basearch +module_hotfixes = 1 +gpgkey=https://rpm.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1