ubi: package

key for EPEL rpm to verify added.

ARG/ENV for MARIADB_VERSION required for upgrade MARIADB_AUTO_UPGRADE.

Remove pmem deps as they are now gone from RHEL9 releases.

Trim down dependency list.

Unfortunately boost-program-options still needed by galera even though only used for garb.

procps-ng added for ps dependency in galera sst scripts.

Add galera library symlink so will work with same configuration as Ubuntu base.

Add healthcheck.sh script, same as others.

Use mariadbd as command as we don't need to backwards compat anything.
This commit is contained in:
Daniel Black 2024-05-17 18:30:59 +10:00
parent 7a882afa49
commit 60c643135c

View File

@ -22,18 +22,21 @@ RUN curl --location --output /usr/local/bin/gosu https://github.com/tianon/gosu/
COPY MariaDB.repo /etc/yum.repos.d/ COPY MariaDB.repo /etc/yum.repos.d/
# missing pwgen (epel), and liburing (10.6+), libboost_program_options.so.1.66.0 hence Alma hack # missing pwgen, pv (epel),
# pmem - removed in next release dev only. # procps - missing dependency of galera sst script
RUN rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm && \ # liburing-2.5-1 (10.6+) - requested https://issues.redhat.com/browse/RHEL-36705
# libboost_program_options.so.1.66.0 only used by garb - should fix upstream
ARG MARIADB_VERSION=%%MARIADB_VERSION%%
ENV MARIADB_VERSION $MARIADB_VERSION
RUN gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys FF8AD1344597106ECE813B918A3872BF3228467C && \
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm && \
dnf update -y && \ dnf update -y && \
dnf install -y zstd jemalloc pwgen socat lsof rsync tzdata xz && \ dnf install -y procps-ng zstd xz jemalloc pwgen tzdata && \
for pkg in daxctl-libs-71.1-8 kmod-libs-28-9 ndctl-libs-71.1-8; do \ for pkg in boost-program-options-1.75.0-8; do \
rpm -ivh https://repo.almalinux.org/almalinux/9/BaseOS/$(arch)/os/Packages/${pkg}.el9.$(arch).rpm ; \
done ; \
for pkg in libpmem-1.12.1-1 liburing-2.5-1 boost-program-options-1.75.0-8; do \
rpm -ivh https://repo.almalinux.org/almalinux/9/AppStream/$(arch)/os/Packages/${pkg}.el9.$(arch).rpm ; \ rpm -ivh https://repo.almalinux.org/almalinux/9/AppStream/$(arch)/os/Packages/${pkg}.el9.$(arch).rpm ; \
done ; \ done ; \
dnf install -y MariaDB-backup-%%MARIADB_VERSION_BASIC%% MariaDB-server-%%MARIADB_VERSION_BASIC%% && \ dnf install -y MariaDB-backup-%%MARIADB_VERSION_BASIC%% MariaDB-server-%%MARIADB_VERSION_BASIC%% && \
ln -s /usr/lib64/galera-4/libgalera_smm.so /usr/lib/libgalera_smm.so && \
dnf clean all dnf clean all
RUN rm -rf /var/lib/mysql; \ RUN rm -rf /var/lib/mysql; \
@ -45,16 +48,13 @@ COPY docker.cnf /etc/my.cnf.d/
VOLUME /var/lib/mysql VOLUME /var/lib/mysql
RUN wget -O /usr/local/bin/gosu https://github.com/tianon/gosu/releases/download/1.12/gosu-$TARGETARCH && \
chmod a+x /usr/local/bin/gosu; \
gosu --version; \
gosu nobody true
RUN mkdir /docker-entrypoint-initdb.d RUN mkdir /docker-entrypoint-initdb.d
COPY healthcheck.sh /usr/local/bin/healthcheck.sh
COPY /docker-entrypoint.sh /usr/local/bin/ COPY /docker-entrypoint.sh /usr/local/bin/
ENTRYPOINT ["docker-entrypoint.sh"] ENTRYPOINT ["docker-entrypoint.sh"]
EXPOSE 3306 EXPOSE 3306
CMD ["mysqld"] CMD ["mariadbd"]