| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:598ca0108009b5c2e9e6f4fc4bd19a6bcd604fccb5b9376fac14a75522a5cfa3 in / |
| CMD ["/bin/bash"] |
| RUN /bin/sh -c groupadd -r mysql && useradd -r -g mysql mysql --home-dir /var/lib/mysql && userdel --remove ubuntu # buildkit |
| ENV GOSU_VERSION=1.17 |
| ARG GPG_KEYS=177F4010FE56CA3336300305F1656F24C74CD1D8 |
| RUN |1 GPG_KEYS=177F4010FE56CA3336300305F1656F24C74CD1D8 /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends ca-certificates gpg gpgv libjemalloc2 pwgen tzdata xz-utils zstd ; savedAptMark="$(apt-mark showmanual)"; apt-get install -y --no-install-recommends dirmngr gpg-agent wget; rm -rf /var/lib/apt/lists/*; dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; wget -q -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; wget -q -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --export "$GPG_KEYS" > /etc/apt/trusted.gpg.d/mariadb.gpg; if command -v gpgconf >/dev/null; then gpgconf --kill all; fi; gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark >/dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit |
| RUN |1 GPG_KEYS=177F4010FE56CA3336300305F1656F24C74CD1D8 /bin/sh -c mkdir /docker-entrypoint-initdb.d # buildkit |
| ENV LANG=C.UTF-8 |
| LABEL org.opencontainers.image.authors=MariaDB Community org.opencontainers.image.title=MariaDB Database org.opencontainers.image.description=MariaDB Database for relational SQL org.opencontainers.image.documentation=https://hub.docker.com/_/mariadb/ org.opencontainers.image.base.name=docker.io/library/ubuntu:noble org.opencontainers.image.licenses=GPL-2.0 org.opencontainers.image.source=https://github.com/MariaDB/mariadb-docker org.opencontainers.image.vendor=MariaDB Community org.opencontainers.image.version=11.8.2 org.opencontainers.image.url=https://github.com/MariaDB/mariadb-docker |
| ARG MARIADB_VERSION=1:11.8.2+maria~ubu2404 |
| ENV MARIADB_VERSION=1:11.8.2+maria~ubu2404 |
| ARG REPOSITORY=http://archive.mariadb.org/mariadb-11.8.2/repo/ubuntu/ noble main main/debug |
| RUN |3 GPG_KEYS=177F4010FE56CA3336300305F1656F24C74CD1D8 MARIADB_VERSION=1:11.8.2+maria~ubu2404 REPOSITORY=http://archive.mariadb.org/mariadb-11.8.2/repo/ubuntu/ noble main main/debug /bin/sh -c set -e; echo "deb ${REPOSITORY}" > /etc/apt/sources.list.d/mariadb.list; { echo 'Package: *'; echo 'Pin: release o=MariaDB'; echo 'Pin-Priority: 999'; } > /etc/apt/preferences.d/mariadb # buildkit |
| RUN |3 GPG_KEYS=177F4010FE56CA3336300305F1656F24C74CD1D8 MARIADB_VERSION=1:11.8.2+maria~ubu2404 REPOSITORY=http://archive.mariadb.org/mariadb-11.8.2/repo/ubuntu/ noble main main/debug /bin/sh -c set -ex; { echo "mariadb-server" mysql-server/root_password password 'unused'; echo "mariadb-server" mysql-server/root_password_again password 'unused'; } | debconf-set-selections; apt-get update; mkdir -p /var/lib/mysql/mysql ; touch /var/lib/mysql/mysql/user.frm ; apt-get install -y --no-install-recommends mariadb-server="$MARIADB_VERSION" mariadb-backup socat ; rm -rf /var/lib/apt/lists/*; rm -rf /var/lib/mysql; mkdir -p /var/lib/mysql /run/mysqld; chown -R mysql:mysql /var/lib/mysql /run/mysqld; chmod 1777 /run/mysqld; find /etc/mysql/ -name '*.cnf' -print0 | xargs -0 grep -lZE '^(bind-address|log|user\s)' | xargs -rt -0 sed -Ei 's/^(bind-address|log|user\s)/#&/'; printf "[mariadb]\nhost-cache-size=0\nskip-name-resolve\n" > /etc/mysql/mariadb.conf.d/05-skipcache.cnf; if [ -L /etc/mysql/my.cnf ]; then sed -i -e '/includedir/ {N;s/\(.*\)\n\(.*\)/\n\2\n\1/}' /etc/mysql/mariadb.cnf; fi # buildkit |
| VOLUME [/var/lib/mysql] |
| COPY healthcheck.sh /usr/local/bin/healthcheck.sh # buildkit |
| COPY docker-entrypoint.sh /usr/local/bin/ # buildkit |
| ENTRYPOINT ["docker-entrypoint.sh"] |
| EXPOSE map[3306/tcp:{}] |
| CMD ["mariadbd"] |
| ARG GOCRON_VERSION=v0.0.11 |
| ARG TARGETOS=linux |
| ARG TARGETARCH=amd64 |
| RUN |3 GOCRON_VERSION=v0.0.11 TARGETOS=linux TARGETARCH=amd64 /bin/sh -c set -x && apt-get update && apt-get -y --no-install-recommends install ca-certificates curl && rm -rf /var/lib/apt/lists/* && curl --fail --retry 4 --retry-all-errors -L https://github.com/prodrigestivill/go-cron/releases/download/$GOCRON_VERSION/go-cron-$TARGETOS-$TARGETARCH-static.gz | zcat > /usr/local/bin/go-cron && chmod a+x /usr/local/bin/go-cron # buildkit |
| ENV MARIADB_DB=**None** MARIADB_DB_FILE=**None** MARIADB_HOST=**None** MARIADB_PORT=3306 MARIADB_USER=**None** MARIADB_USER_FILE=**None** MARIADB_PASSWORD=**None** MARIADB_PASSWORD_FILE=**None** MARIADB_PASSFILE_STORE=**None** MARIADB_EXTRA_OPTS= SCHEDULE=@daily BACKUP_DIR=/backups BACKUP_SUFFIX=.sql.gz BACKUP_LATEST_TYPE=symlink BACKUP_KEEP_DAYS=7 BACKUP_KEEP_WEEKS=4 BACKUP_KEEP_MONTHS=6 BACKUP_KEEP_MINS=1440 HEALTHCHECK_PORT=8080 WEBHOOK_URL=**None** WEBHOOK_EXTRA_ARGS= |
| COPY hooks /hooks # buildkit |
| COPY backup.sh /backup.sh # buildkit |
| VOLUME [/backups] |
| ENTRYPOINT ["/bin/sh" "-c"] |
| CMD ["exec /usr/local/bin/go-cron -s \"$SCHEDULE\" -p \"$HEALTHCHECK_PORT\" -- /backup.sh"] |
| HEALTHCHECK &{["CMD-SHELL" "curl -f \"http://localhost:$HEALTHCHECK_PORT/\" || exit 1"] "5m0s" "3s" "0s" "0s" '\x00'} |