diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1435a03..1d1f5d3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ jobs: strategy: matrix: - version: ['1.39', '1.40', '1.41'] + version: ['1.39', '1.41', '1.42'] type: [apache, fpm, fpm-alpine] steps: diff --git a/1.40/apache/Dockerfile b/1.40/apache/Dockerfile deleted file mode 100644 index 519950f..0000000 --- a/1.40/apache/Dockerfile +++ /dev/null @@ -1,117 +0,0 @@ -FROM php:8.1-apache - -# System dependencies -RUN set -eux; \ - \ - apt-get update; \ - apt-get install -y --no-install-recommends \ - git \ - librsvg2-bin \ - imagemagick \ - # Required for SyntaxHighlighting - python3 \ - ; \ - rm -rf /var/lib/apt/lists/* - -# Install the PHP extensions we need -RUN set -eux; \ - \ - savedAptMark="$(apt-mark showmanual)"; \ - \ - apt-get update; \ - apt-get install -y --no-install-recommends \ - libicu-dev \ - libonig-dev \ - ; \ - \ - docker-php-ext-install -j "$(nproc)" \ - calendar \ - intl \ - mbstring \ - mysqli \ - opcache \ - ; \ - \ - pecl install APCu-5.1.23; \ - docker-php-ext-enable \ - apcu \ - ; \ - rm -r /tmp/pear; \ - \ - # reset apt-mark's "manual" list so that "purge --auto-remove" will remove all build dependencies - apt-mark auto '.*' > /dev/null; \ - apt-mark manual $savedAptMark; \ - ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \ - | awk '/=>/ { print $3 }' \ - | sort -u \ - | xargs -r dpkg-query -S \ - | cut -d: -f1 \ - | sort -u \ - | xargs -rt apt-mark manual; \ - \ - apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/* - -# Enable Short URLs -RUN set -eux; \ - a2enmod rewrite; \ - { \ - echo ""; \ - echo " RewriteEngine On"; \ - echo " RewriteCond %{REQUEST_FILENAME} !-f"; \ - echo " RewriteCond %{REQUEST_FILENAME} !-d"; \ - echo " RewriteRule ^ %{DOCUMENT_ROOT}/index.php [L]"; \ - echo ""; \ - } > "$APACHE_CONFDIR/conf-available/short-url.conf"; \ - a2enconf short-url - -# Enable AllowEncodedSlashes for VisualEditor -RUN sed -i "s/<\/VirtualHost>/\tAllowEncodedSlashes NoDecode\n<\/VirtualHost>/" "$APACHE_CONFDIR/sites-available/000-default.conf" - -# set recommended PHP.ini settings -# see https://secure.php.net/manual/en/opcache.installation.php -RUN { \ - echo 'opcache.memory_consumption=128'; \ - echo 'opcache.interned_strings_buffer=8'; \ - echo 'opcache.max_accelerated_files=4000'; \ - echo 'opcache.revalidate_freq=60'; \ - } > /usr/local/etc/php/conf.d/opcache-recommended.ini - -# SQLite Directory Setup -RUN set -eux; \ - mkdir -p /var/www/data; \ - chown -R www-data:www-data /var/www/data - -# Version -ENV MEDIAWIKI_MAJOR_VERSION 1.40 -ENV MEDIAWIKI_VERSION 1.40.4 - -# MediaWiki setup -RUN set -eux; \ - fetchDeps=" \ - gnupg \ - dirmngr \ - "; \ - apt-get update; \ - apt-get install -y --no-install-recommends $fetchDeps; \ - \ - curl -fSL "https://releases.wikimedia.org/mediawiki/${MEDIAWIKI_MAJOR_VERSION}/mediawiki-${MEDIAWIKI_VERSION}.tar.gz" -o mediawiki.tar.gz; \ - curl -fSL "https://releases.wikimedia.org/mediawiki/${MEDIAWIKI_MAJOR_VERSION}/mediawiki-${MEDIAWIKI_VERSION}.tar.gz.sig" -o mediawiki.tar.gz.sig; \ - export GNUPGHOME="$(mktemp -d)"; \ -# gpg key from https://www.mediawiki.org/keys/keys.txt - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys \ - D7D6767D135A514BEB86E9BA75682B08E8A3FEC4 \ - 441276E9CCD15F44F6D97D18C119E1A64D70938E \ - F7F780D82EBFB8A56556E7EE82403E59F9F8CD79 \ - 1D98867E82982C8FE0ABC25F9B69B3109D3BB7B0 \ - ; \ - gpg --batch --verify mediawiki.tar.gz.sig mediawiki.tar.gz; \ - tar -x --strip-components=1 -f mediawiki.tar.gz; \ - gpgconf --kill all; \ - rm -r "$GNUPGHOME" mediawiki.tar.gz.sig mediawiki.tar.gz; \ - chown -R www-data:www-data extensions skins cache images; \ - \ - apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \ - rm -rf /var/lib/apt/lists/* - -CMD ["apache2-foreground"] diff --git a/1.40/fpm-alpine/Dockerfile b/1.40/fpm-alpine/Dockerfile deleted file mode 100644 index 08c99b9..0000000 --- a/1.40/fpm-alpine/Dockerfile +++ /dev/null @@ -1,89 +0,0 @@ -FROM php:8.1-fpm-alpine - -# System dependencies -RUN set -eux; \ - \ - apk add --no-cache \ - git \ - imagemagick \ - # Required for SyntaxHighlighting - python3 \ - ; - -# Install the PHP extensions we need -RUN set -eux; \ - \ - apk add --no-cache --virtual .build-deps \ - $PHPIZE_DEPS \ - icu-dev \ - oniguruma-dev \ - ; \ - \ - docker-php-ext-install -j "$(nproc)" \ - calendar \ - intl \ - mbstring \ - mysqli \ - opcache \ - ; \ - \ - pecl install APCu-5.1.23; \ - docker-php-ext-enable \ - apcu \ - ; \ - rm -r /tmp/pear; \ - \ - runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local/lib/php/extensions \ - | tr ',' '\n' \ - | sort -u \ - | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ - )"; \ - apk add --no-network --virtual .mediawiki-phpext-rundeps $runDeps; \ - apk del --no-network .build-deps - -# set recommended PHP.ini settings -# see https://secure.php.net/manual/en/opcache.installation.php -RUN { \ - echo 'opcache.memory_consumption=128'; \ - echo 'opcache.interned_strings_buffer=8'; \ - echo 'opcache.max_accelerated_files=4000'; \ - echo 'opcache.revalidate_freq=60'; \ - echo 'opcache.fast_shutdown=1'; \ - } > /usr/local/etc/php/conf.d/opcache-recommended.ini - -# SQLite Directory Setup -RUN set -eux; \ - mkdir -p /var/www/data; \ - chown -R www-data:www-data /var/www/data - -# Version -ENV MEDIAWIKI_MAJOR_VERSION 1.40 -ENV MEDIAWIKI_VERSION 1.40.4 - -# MediaWiki setup -RUN set -eux; \ - apk add --no-cache --virtual .fetch-deps \ - bzip2 \ - gnupg \ - ; \ - \ - curl -fSL "https://releases.wikimedia.org/mediawiki/${MEDIAWIKI_MAJOR_VERSION}/mediawiki-${MEDIAWIKI_VERSION}.tar.gz" -o mediawiki.tar.gz; \ - curl -fSL "https://releases.wikimedia.org/mediawiki/${MEDIAWIKI_MAJOR_VERSION}/mediawiki-${MEDIAWIKI_VERSION}.tar.gz.sig" -o mediawiki.tar.gz.sig; \ - export GNUPGHOME="$(mktemp -d)"; \ -# gpg key from https://www.mediawiki.org/keys/keys.txt - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys \ - D7D6767D135A514BEB86E9BA75682B08E8A3FEC4 \ - 441276E9CCD15F44F6D97D18C119E1A64D70938E \ - F7F780D82EBFB8A56556E7EE82403E59F9F8CD79 \ - 1D98867E82982C8FE0ABC25F9B69B3109D3BB7B0 \ - ; \ - gpg --batch --verify mediawiki.tar.gz.sig mediawiki.tar.gz; \ - tar -x --strip-components=1 -f mediawiki.tar.gz; \ - gpgconf --kill all; \ - rm -rf "$GNUPGHOME" mediawiki.tar.gz.sig mediawiki.tar.gz; \ - chown -R www-data:www-data extensions skins cache images; \ - \ - apk del --no-network .fetch-deps - -CMD ["php-fpm"] diff --git a/1.40/fpm/Dockerfile b/1.40/fpm/Dockerfile deleted file mode 100644 index 833a027..0000000 --- a/1.40/fpm/Dockerfile +++ /dev/null @@ -1,102 +0,0 @@ -FROM php:8.1-fpm - -# System dependencies -RUN set -eux; \ - \ - apt-get update; \ - apt-get install -y --no-install-recommends \ - git \ - librsvg2-bin \ - imagemagick \ - # Required for SyntaxHighlighting - python3 \ - ; \ - rm -rf /var/lib/apt/lists/* - -# Install the PHP extensions we need -RUN set -eux; \ - \ - savedAptMark="$(apt-mark showmanual)"; \ - \ - apt-get update; \ - apt-get install -y --no-install-recommends \ - libicu-dev \ - libonig-dev \ - ; \ - \ - docker-php-ext-install -j "$(nproc)" \ - calendar \ - intl \ - mbstring \ - mysqli \ - opcache \ - ; \ - \ - pecl install APCu-5.1.23; \ - docker-php-ext-enable \ - apcu \ - ; \ - rm -r /tmp/pear; \ - \ - # reset apt-mark's "manual" list so that "purge --auto-remove" will remove all build dependencies - apt-mark auto '.*' > /dev/null; \ - apt-mark manual $savedAptMark; \ - ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \ - | awk '/=>/ { print $3 }' \ - | sort -u \ - | xargs -r dpkg-query -S \ - | cut -d: -f1 \ - | sort -u \ - | xargs -rt apt-mark manual; \ - \ - apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/* - - -# set recommended PHP.ini settings -# see https://secure.php.net/manual/en/opcache.installation.php -RUN { \ - echo 'opcache.memory_consumption=128'; \ - echo 'opcache.interned_strings_buffer=8'; \ - echo 'opcache.max_accelerated_files=4000'; \ - echo 'opcache.revalidate_freq=60'; \ - } > /usr/local/etc/php/conf.d/opcache-recommended.ini - -# SQLite Directory Setup -RUN set -eux; \ - mkdir -p /var/www/data; \ - chown -R www-data:www-data /var/www/data - -# Version -ENV MEDIAWIKI_MAJOR_VERSION 1.40 -ENV MEDIAWIKI_VERSION 1.40.4 - -# MediaWiki setup -RUN set -eux; \ - fetchDeps=" \ - gnupg \ - dirmngr \ - "; \ - apt-get update; \ - apt-get install -y --no-install-recommends $fetchDeps; \ - \ - curl -fSL "https://releases.wikimedia.org/mediawiki/${MEDIAWIKI_MAJOR_VERSION}/mediawiki-${MEDIAWIKI_VERSION}.tar.gz" -o mediawiki.tar.gz; \ - curl -fSL "https://releases.wikimedia.org/mediawiki/${MEDIAWIKI_MAJOR_VERSION}/mediawiki-${MEDIAWIKI_VERSION}.tar.gz.sig" -o mediawiki.tar.gz.sig; \ - export GNUPGHOME="$(mktemp -d)"; \ -# gpg key from https://www.mediawiki.org/keys/keys.txt - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys \ - D7D6767D135A514BEB86E9BA75682B08E8A3FEC4 \ - 441276E9CCD15F44F6D97D18C119E1A64D70938E \ - F7F780D82EBFB8A56556E7EE82403E59F9F8CD79 \ - 1D98867E82982C8FE0ABC25F9B69B3109D3BB7B0 \ - ; \ - gpg --batch --verify mediawiki.tar.gz.sig mediawiki.tar.gz; \ - tar -x --strip-components=1 -f mediawiki.tar.gz; \ - gpgconf --kill all; \ - rm -r "$GNUPGHOME" mediawiki.tar.gz.sig mediawiki.tar.gz; \ - chown -R www-data:www-data extensions skins cache images; \ - \ - apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \ - rm -rf /var/lib/apt/lists/* - -CMD ["php-fpm"] diff --git a/1.42/apache/Dockerfile b/1.42/apache/Dockerfile index 00a21f5..048cfcf 100644 --- a/1.42/apache/Dockerfile +++ b/1.42/apache/Dockerfile @@ -32,7 +32,7 @@ RUN set -eux; \ opcache \ ; \ \ - pecl install APCu-5.1.21; \ + pecl install APCu-5.1.23; \ docker-php-ext-enable \ apcu \ ; \ diff --git a/1.42/fpm-alpine/Dockerfile b/1.42/fpm-alpine/Dockerfile index c3abab2..f8bff45 100644 --- a/1.42/fpm-alpine/Dockerfile +++ b/1.42/fpm-alpine/Dockerfile @@ -27,7 +27,7 @@ RUN set -eux; \ opcache \ ; \ \ - pecl install APCu-5.1.21; \ + pecl install APCu-5.1.23; \ docker-php-ext-enable \ apcu \ ; \ diff --git a/1.42/fpm/Dockerfile b/1.42/fpm/Dockerfile index e58964a..04602b5 100644 --- a/1.42/fpm/Dockerfile +++ b/1.42/fpm/Dockerfile @@ -32,7 +32,7 @@ RUN set -eux; \ opcache \ ; \ \ - pecl install APCu-5.1.21; \ + pecl install APCu-5.1.23; \ docker-php-ext-enable \ apcu \ ; \