diff --git a/bitnami/matomo/3/debian-10/Dockerfile b/bitnami/matomo/3/debian-10/Dockerfile index f24a3c92a106..58fe86be52cd 100644 --- a/bitnami/matomo/3/debian-10/Dockerfile +++ b/bitnami/matomo/3/debian-10/Dockerfile @@ -1,15 +1,15 @@ FROM docker.io/bitnami/minideb:buster LABEL maintainer "Bitnami " -ENV PATH="/opt/bitnami/apache/bin:/opt/bitnami/php/bin:/opt/bitnami/php/sbin:/opt/bitnami/mysql/bin:/opt/bitnami/common/bin:/opt/bitnami/nami/bin:$PATH" +ENV PATH="/opt/bitnami/php/bin:/opt/bitnami/php/sbin:/opt/bitnami/apache/bin:/opt/bitnami/mysql/bin:/opt/bitnami/common/bin:/opt/bitnami/nami/bin:$PATH" COPY prebuildfs / # Install required system packages and dependencies -RUN install_packages ca-certificates cron curl dirmngr gnupg libaudit1 libbsd0 libbz2-1.0 libc6 libcap-ng0 libcom-err2 libcurl4 libexpat1 libffi6 libfftw3-double3 libfontconfig1 libfreetype6 libgcc1 libgcrypt20 libglib2.0-0 libgmp10 libgnutls30 libgomp1 libgpg-error0 libgssapi-krb5-2 libhogweed4 libicu63 libidn2-0 libjemalloc2 libjpeg62-turbo libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 liblcms2-2 libldap-2.4-2 liblqr-1-0 libltdl7 liblzma5 libmagickcore-6.q16-6 libmagickwand-6.q16-6 libmcrypt4 libmemcached11 libmemcachedutil2 libncurses6 libnettle6 libnghttp2-14 libp11-kit0 libpam0g libpcre3 libpng16-16 libpq5 libpsl5 libreadline7 librtmp1 libsasl2-2 libsqlite3-0 libssh2-1 libssl1.1 libstdc++6 libsybdb5 libtasn1-6 libtidy5deb1 libtinfo6 libunistring2 libuuid1 libx11-6 libxau6 libxcb1 libxdmcp6 libxext6 libxml2 libxslt1.1 libzip4 procps sudo unzip zlib1g +RUN install_packages ca-certificates cron curl dirmngr gnupg gzip libaudit1 libbsd0 libbz2-1.0 libc6 libcap-ng0 libcom-err2 libcurl4 libexpat1 libffi6 libfftw3-double3 libfontconfig1 libfreetype6 libgcc1 libgcrypt20 libglib2.0-0 libgmp10 libgnutls30 libgomp1 libgpg-error0 libgssapi-krb5-2 libhogweed4 libicu63 libidn2-0 libjemalloc2 libjpeg62-turbo libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 liblcms2-2 libldap-2.4-2 liblqr-1-0 libltdl7 liblzma5 libmagickcore-6.q16-6 libmagickwand-6.q16-6 libmcrypt4 libmemcached11 libmemcachedutil2 libncurses6 libnettle6 libnghttp2-14 libp11-kit0 libpam0g libpcre3 libpng16-16 libpq5 libpsl5 libreadline7 librtmp1 libsasl2-2 libsqlite3-0 libssh2-1 libssl1.1 libstdc++6 libsybdb5 libtasn1-6 libtidy5deb1 libtinfo6 libunistring2 libuuid1 libx11-6 libxau6 libxcb1 libxdmcp6 libxext6 libxml2 libxslt1.1 libzip4 procps sudo tar zlib1g RUN /build/bitnami-user.sh RUN /build/install-nami.sh -RUN bitnami-pkg unpack apache-2.4.43-1 --checksum 35ad223096be455ce5d11b6006db6d83b5080802cead122bfa5ebebc9d29da61 RUN bitnami-pkg unpack php-7.3.18-0 --checksum 279b5b626de773d0216749aa8046477015276575f1c2a369ca0b0f054e4a68b5 +RUN bitnami-pkg unpack apache-2.4.43-1 --checksum 35ad223096be455ce5d11b6006db6d83b5080802cead122bfa5ebebc9d29da61 RUN bitnami-pkg unpack mysql-client-10.3.23-0 --checksum 7af3cead7a38670bed924fbc99e20c67f6244bb5a92642adb4ab6cd307aa9a5e RUN bitnami-pkg install libphp-7.3.18-0 --checksum f78406a580c26dff8870708eeef383d9ad048a2b43a74160318e37115af4cf74 RUN bitnami-pkg install tini-0.19.0-0 --checksum 9a8ae20be31a518f042fcec359f2cf35bfdb4e2a56f2fa8ff9ef2ecaf45da80c @@ -17,9 +17,9 @@ RUN bitnami-pkg unpack matomo-3.13.5-0 --checksum 80af57fa7077b9cd6a03391c2f2d65 RUN bitnami-pkg install gosu-1.12.0-0 --checksum 582d501eeb6b338a24f417fededbf14295903d6be55c52d66c52e616c81bcd8c RUN apt-get update && apt-get upgrade -y && \ rm -r /var/lib/apt/lists /var/cache/apt/archives +RUN sed -i -e '/pam_loginuid.so/ s/^#*/#/' /etc/pam.d/cron RUN ln -sf /dev/stdout /opt/bitnami/apache/logs/access_log && \ ln -sf /dev/stderr /opt/bitnami/apache/logs/error_log -RUN sed -i -e '/pam_loginuid.so/ s/^#*/#/' /etc/pam.d/cron COPY rootfs / ENV ALLOW_EMPTY_PASSWORD="no" \ @@ -27,7 +27,7 @@ ENV ALLOW_EMPTY_PASSWORD="no" \ APACHE_HTTPS_PORT_NUMBER="443" \ APACHE_HTTP_PORT_NUMBER="80" \ BITNAMI_APP_NAME="matomo" \ - BITNAMI_IMAGE_VERSION="3.13.5-debian-10-r21" \ + BITNAMI_IMAGE_VERSION="3.13.5-debian-10-r22" \ MARIADB_HOST="mariadb" \ MARIADB_PORT_NUMBER="3306" \ MARIADB_ROOT_PASSWORD="" \ @@ -48,6 +48,9 @@ ENV ALLOW_EMPTY_PASSWORD="no" \ MYSQL_CLIENT_CREATE_DATABASE_USER="" \ MYSQL_CLIENT_ENABLE_SSL="no" \ MYSQL_CLIENT_SSL_CA_FILE="" \ + OS_ARCH="amd64" \ + OS_FLAVOUR="debian-10" \ + OS_NAME="linux" \ PHP_MEMORY_LIMIT="128M" \ SMTP_AUTH="Plain" \ SMTP_HOST="" \ diff --git a/bitnami/matomo/3/debian-10/docker-compose.yml b/bitnami/matomo/3/debian-10/docker-compose.yml index fe361ae50908..f76dffcf0d37 100644 --- a/bitnami/matomo/3/debian-10/docker-compose.yml +++ b/bitnami/matomo/3/debian-10/docker-compose.yml @@ -1,7 +1,7 @@ version: '2' services: mariadb: - image: 'bitnami/mariadb:10.3' + image: 'docker.io/bitnami/mariadb:10.3-debian-10' environment: - MARIADB_USER=bn_matomo - MARIADB_DATABASE=bitnami_matomo @@ -10,7 +10,7 @@ services: volumes: - 'mariadb_data:/bitnami' matomo: - image: 'bitnami/matomo:3' + image: 'docker.io/bitnami/matomo:3-debian-10' environment: - MARIADB_HOST=mariadb - MARIADB_PORT_NUMBER=3306 diff --git a/bitnami/matomo/3/debian-10/prebuildfs/usr/sbin/install_packages b/bitnami/matomo/3/debian-10/prebuildfs/usr/sbin/install_packages new file mode 100755 index 000000000000..c9577647443b --- /dev/null +++ b/bitnami/matomo/3/debian-10/prebuildfs/usr/sbin/install_packages @@ -0,0 +1,24 @@ +#!/bin/sh +set -e +set -u +export DEBIAN_FRONTEND=noninteractive +n=0 +max=2 +until [ $n -gt $max ]; do + set +e + ( + apt-get update -qq && + apt-get install -y --no-install-recommends "$@" + ) + CODE=$? + set -e + if [ $CODE -eq 0 ]; then + break + fi + if [ $n -eq $max ]; then + exit $CODE + fi + echo "apt failed, retrying" + n=$(($n + 1)) +done +rm -r /var/lib/apt/lists /var/cache/apt/archives diff --git a/bitnami/matomo/3/debian-10/rootfs/app-entrypoint.sh b/bitnami/matomo/3/debian-10/rootfs/app-entrypoint.sh index d10653e03c26..8f1994f6ce5e 100755 --- a/bitnami/matomo/3/debian-10/rootfs/app-entrypoint.sh +++ b/bitnami/matomo/3/debian-10/rootfs/app-entrypoint.sh @@ -8,7 +8,7 @@ print_welcome_page if [[ "$1" == "nami" && "$2" == "start" ]] || [[ "$1" == "/run.sh" ]]; then . /apache-init.sh . /matomo-init.sh - nami_initialize apache php mysql-client matomo + nami_initialize php apache mysql-client matomo info "Starting gosu... " . /post-init.sh fi diff --git a/bitnami/matomo/3/debian-10/rootfs/matomo-init.sh b/bitnami/matomo/3/debian-10/rootfs/matomo-init.sh old mode 100644 new mode 100755 diff --git a/bitnami/matomo/3/debian-10/rootfs/post-init.d/php.sh b/bitnami/matomo/3/debian-10/rootfs/post-init.d/php.sh new file mode 100755 index 000000000000..fb44050dece0 --- /dev/null +++ b/bitnami/matomo/3/debian-10/rootfs/post-init.d/php.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# +# Post-init script to execute PHP files + +# shellcheck disable=SC1091 + +# set -o xtrace # Uncomment this line for debugging purposes + +. /opt/bitnami/base/functions + +readonly f="${1:?missing PHP file}" +failure=0 + +if [[ "$f" == *".php" ]]; then + info "Executing $f with PHP interpreter" + php "$f" || failure=$? +fi +if [[ "$failure" -ne 0 ]]; then + error "Failed to execute ${f}" + exit "$failure" +fi diff --git a/bitnami/matomo/3/debian-10/rootfs/post-init.d/shell.sh b/bitnami/matomo/3/debian-10/rootfs/post-init.d/shell.sh new file mode 100755 index 000000000000..e03122ff6f3a --- /dev/null +++ b/bitnami/matomo/3/debian-10/rootfs/post-init.d/shell.sh @@ -0,0 +1,24 @@ +#!/bin/bash +# +# Post-init script to execute Shell files + +# shellcheck disable=SC1090,SC1091 + +# set -o xtrace # Uncomment this line for debugging purposes + +. /opt/bitnami/base/functions + +readonly f="${1:?missing SHELL file}" +failure=0 + +if [[ "$f" == *".sh" ]]; then + if [[ -x "$f" ]]; then + info "Executing $f"; "$f" || failure=$? + else + info "Sourcing $f"; . "$f" + fi +fi +if [[ "$failure" -ne 0 ]]; then + error "Failed to execute ${f}" + exit "$failure" +fi diff --git a/bitnami/matomo/3/debian-10/rootfs/post-init.d/sql-mysql.sh b/bitnami/matomo/3/debian-10/rootfs/post-init.d/sql-mysql.sh new file mode 100755 index 000000000000..11b14a25f5bc --- /dev/null +++ b/bitnami/matomo/3/debian-10/rootfs/post-init.d/sql-mysql.sh @@ -0,0 +1,29 @@ +#!/bin/bash +# +# Post-init script to execute SQL files with MySQL client + +# shellcheck disable=SC1091 + +# set -o xtrace # Uncomment this line for debugging purposes + +. /opt/bitnami/base/functions + +readonly f="${1:?missing SQL file}" +failure=0 + +if [[ "$f" =~ ^.*(\.sql|\.sql\.gz)$ ]]; then + info "Executing $f" + mysql_cmd=( mysql -h "$MARIADB_HOST" -P "$MARIADB_PORT_NUMBER" -u "$MARIADB_ROOT_USER" ) + if [[ "${ALLOW_EMPTY_PASSWORD:-no}" != "yes" ]]; then + mysql_cmd+=( -p"$MARIADB_ROOT_PASSWORD" ) + fi + if [[ "$f" == *".sql" ]]; then + "${mysql_cmd[@]}" < "$f" || failure=$? + elif [[ "$f" == *".sql.gz" ]]; then + gunzip -c "$f" | "${mysql_cmd[@]}" || failure=$? + fi +fi +if [[ "$failure" -ne 0 ]]; then + error "Failed to execute ${f}" + exit "$failure" +fi diff --git a/bitnami/matomo/3/debian-10/rootfs/post-init.sh b/bitnami/matomo/3/debian-10/rootfs/post-init.sh index 9d6727ce6c74..e9f4f26f533c 100644 --- a/bitnami/matomo/3/debian-10/rootfs/post-init.sh +++ b/bitnami/matomo/3/debian-10/rootfs/post-init.sh @@ -1,46 +1,15 @@ #!/bin/bash +# set -o xtrace # Uncomment this line for debugging purposes + . /opt/bitnami/base/functions -if [[ -d /docker-entrypoint-init.d ]] && [[ ! -f "/bitnami/$BITNAMI_APP_NAME/.user_scripts_initialized" ]]; then +if [[ -d /docker-entrypoint-init.d ]] && [[ ! -f "/bitnami/matomo/.user_scripts_initialized" ]]; then for f in /docker-entrypoint-init.d/*; do - failure=0 - case "$f" in - *.sh) - if [[ -x "$f" ]]; then - info "Executing $f"; "$f" || failure=$? - else - info "Sourcing $f"; . "$f" - fi - ;; - - *.php) - info "Executing $f with PHP interpreter" - php "$f" || failure=$? - ;; - - *.sql|*.sql.gz) - info "Executing $f" - mysql_cmd=( mysql -h "$MARIADB_HOST" -P "$MARIADB_PORT_NUMBER" -u "$MARIADB_ROOT_USER" ) - if [[ "${ALLOW_EMPTY_PASSWORD:-no}" != "yes" ]]; then - mysql_cmd+=( -p"$MARIADB_ROOT_PASSWORD" ) - fi - if [[ "$f" == *".sql" ]]; then - "${mysql_cmd[@]}" < "$f" || failure=$? - elif [[ "$f" == *".sql.gz" ]]; then - gunzip -c "$f" | "${mysql_cmd[@]}" || failure=$? - fi - ;; - - *) - info "Ignoring $f" - ;; - esac - if [[ "$failure" -ne 0 ]]; then - error "Failed to execute $f" - exit "$failure" - fi + for p in /post-init.d/*.sh; do + "$p" "$f" + done done info "Custom scripts were executed" - touch "/bitnami/$BITNAMI_APP_NAME/.user_scripts_initialized" + touch "/bitnami/matomo/.user_scripts_initialized" fi diff --git a/bitnami/matomo/README.md b/bitnami/matomo/README.md index c925fa68c763..7a4d201fd61a 100644 --- a/bitnami/matomo/README.md +++ b/bitnami/matomo/README.md @@ -30,7 +30,7 @@ $ docker-compose up -d Learn more about the Bitnami tagging policy and the difference between rolling tags and immutable tags [in our documentation page](https://docs.bitnami.com/tutorials/understand-rolling-tags-containers/). -* [`3-debian-10`, `3.13.5-debian-10-r21`, `3`, `3.13.5`, `latest` (3/debian-10/Dockerfile)](https://github.com/bitnami/bitnami-docker-matomo/blob/3.13.5-debian-10-r21/3/debian-10/Dockerfile) +* [`3-debian-10`, `3.13.5-debian-10-r22`, `3`, `3.13.5`, `latest` (3/debian-10/Dockerfile)](https://github.com/bitnami/bitnami-docker-matomo/blob/3.13.5-debian-10-r22/3/debian-10/Dockerfile) Subscribe to project updates by watching the [bitnami/matomo GitHub repo](https://github.com/bitnami/bitnami-docker-matomo). diff --git a/bitnami/matomo/docker-compose.yml b/bitnami/matomo/docker-compose.yml index fe361ae50908..f76dffcf0d37 100644 --- a/bitnami/matomo/docker-compose.yml +++ b/bitnami/matomo/docker-compose.yml @@ -1,7 +1,7 @@ version: '2' services: mariadb: - image: 'bitnami/mariadb:10.3' + image: 'docker.io/bitnami/mariadb:10.3-debian-10' environment: - MARIADB_USER=bn_matomo - MARIADB_DATABASE=bitnami_matomo @@ -10,7 +10,7 @@ services: volumes: - 'mariadb_data:/bitnami' matomo: - image: 'bitnami/matomo:3' + image: 'docker.io/bitnami/matomo:3-debian-10' environment: - MARIADB_HOST=mariadb - MARIADB_PORT_NUMBER=3306