diff --git a/images/7.2/php/Dockerfile b/images/7.2/php/Dockerfile index 4d7856c..2796730 100644 --- a/images/7.2/php/Dockerfile +++ b/images/7.2/php/Dockerfile @@ -27,7 +27,7 @@ RUN set -ex; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr --with-webp-dir=/usr; \ + docker-php-ext-configure gd --with-gd --with-jpeg-dir=/usr -with-png-dir=/usr --with-webp-dir=/usr; \ \ docker-php-ext-install gd opcache mysqli zip exif intl mbstring xml xsl; \ \ diff --git a/images/7.3/php/Dockerfile b/images/7.3/php/Dockerfile index 73d6dfa..453842b 100644 --- a/images/7.3/php/Dockerfile +++ b/images/7.3/php/Dockerfile @@ -23,7 +23,7 @@ RUN set -ex; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr --with-webp-dir=/usr; \ + docker-php-ext-configure gd --with-gd --with-jpeg-dir=/usr -with-png-dir=/usr --with-webp-dir=/usr; \ \ docker-php-ext-install gd opcache mysqli zip exif intl mbstring xml xsl; \ \ diff --git a/images/7.4/php/Dockerfile b/images/7.4/php/Dockerfile index 1b91c6d..d6461ca 100644 --- a/images/7.4/php/Dockerfile +++ b/images/7.4/php/Dockerfile @@ -23,7 +23,7 @@ RUN set -ex; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --enable-gd --with-jpeg=/usr --with-webp=/usr; \ + docker-php-ext-configure gd --with-jpeg=/usr --with-webp=/usr; \ \ docker-php-ext-install gd opcache mysqli zip exif intl mbstring xml xsl; \ \ diff --git a/images/8.0/php/Dockerfile b/images/8.0/php/Dockerfile index 1bd8546..8056026 100644 --- a/images/8.0/php/Dockerfile +++ b/images/8.0/php/Dockerfile @@ -23,7 +23,7 @@ RUN set -ex; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --enable-gd --with-jpeg=/usr --with-webp=/usr; \ + docker-php-ext-configure gd --with-jpeg=/usr --with-webp=/usr; \ \ docker-php-ext-install gd opcache mysqli zip exif intl mbstring xml xsl; \ \ diff --git a/images/8.1/php/Dockerfile b/images/8.1/php/Dockerfile index 3c2d793..93a2758 100644 --- a/images/8.1/php/Dockerfile +++ b/images/8.1/php/Dockerfile @@ -17,13 +17,13 @@ RUN set -ex; \ \ apt-get update; \ \ - apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libzip-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync libxslt-dev git; \ + apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libavif-dev libaom-dev libdav1d-dev libheif-dev libzip-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync libxslt-dev git; \ apt-get upgrade openssl -y; \ update-ca-certificates --fresh; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --enable-gd --with-jpeg=/usr --with-webp=/usr; \ + docker-php-ext-configure gd --with-jpeg=/usr --with-webp=/usr --with-avif=/usr; \ \ docker-php-ext-install gd opcache mysqli zip exif intl mbstring xml xsl; \ \ diff --git a/images/8.2/php/Dockerfile b/images/8.2/php/Dockerfile index 162a054..0b957ad 100644 --- a/images/8.2/php/Dockerfile +++ b/images/8.2/php/Dockerfile @@ -17,13 +17,13 @@ RUN set -ex; \ \ apt-get update; \ \ - apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libzip-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync libxslt-dev git; \ + apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libavif-dev libaom-dev libdav1d-dev libheif-dev libzip-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync libxslt-dev git; \ apt-get upgrade openssl -y; \ update-ca-certificates --fresh; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --enable-gd --with-jpeg=/usr --with-webp=/usr; \ + docker-php-ext-configure gd --with-jpeg=/usr --with-webp=/usr --with-avif=/usr; \ \ docker-php-ext-install gd opcache mysqli zip exif intl mbstring xml xsl; \ \ diff --git a/images/8.3/php/Dockerfile b/images/8.3/php/Dockerfile index ae65d49..8892935 100644 --- a/images/8.3/php/Dockerfile +++ b/images/8.3/php/Dockerfile @@ -17,13 +17,13 @@ RUN set -ex; \ \ apt-get update; \ \ - apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libzip-dev libssl-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync libxslt-dev git; \ + apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libavif-dev libaom-dev libheif-dev libzip-dev libssl-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync libxslt-dev git; \ apt-get upgrade openssl -y; \ update-ca-certificates --fresh; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --enable-gd --with-jpeg=/usr --with-webp=/usr; \ + docker-php-ext-configure gd --with-jpeg=/usr --with-webp=/usr --with-avif=/usr; \ \ docker-php-ext-install gd opcache mysqli zip exif intl mbstring xml xsl; \ \ diff --git a/images/8.4/php/Dockerfile b/images/8.4/php/Dockerfile index af104fc..19e65ee 100644 --- a/images/8.4/php/Dockerfile +++ b/images/8.4/php/Dockerfile @@ -17,13 +17,13 @@ RUN set -ex; \ \ apt-get update; \ \ - apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libzip-dev libssl-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync libxslt-dev git; \ + apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libavif-dev libaom-dev libdav1d-dev libheif-dev libzip-dev libssl-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync libxslt-dev git; \ apt-get upgrade openssl -y; \ update-ca-certificates --fresh; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --enable-gd --with-jpeg=/usr --with-webp=/usr; \ + docker-php-ext-configure gd --with-jpeg=/usr --with-webp=/usr --with-avif=/usr; \ \ docker-php-ext-install gd opcache mysqli zip exif intl mbstring xml xsl; \ \ diff --git a/images/8.5/php/Dockerfile b/images/8.5/php/Dockerfile index e12762f..bcb5e58 100644 --- a/images/8.5/php/Dockerfile +++ b/images/8.5/php/Dockerfile @@ -17,13 +17,13 @@ RUN set -ex; \ \ apt-get update; \ \ - apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libzip-dev libssl-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync git; \ + apt-get install -y --no-install-recommends libjpeg-dev libpng-dev libwebp-dev libavif-dev libaom-dev libdav1d-dev libheif-dev libzip-dev libssl-dev libmemcached-dev unzip libmagickwand-dev ghostscript libonig-dev locales sudo rsync git; \ apt-get upgrade openssl -y; \ update-ca-certificates --fresh; \ sed -i 's/^# *\(\(ru_RU\|fr_FR\|de_DE\|es_ES\|ja_JP\).UTF-8\)/\1/' /etc/locale.gen; \ locale-gen; \ \ - docker-php-ext-configure gd --enable-gd --with-jpeg=/usr --with-webp=/usr; \ + docker-php-ext-configure gd --with-jpeg=/usr --with-webp=/usr --with-avif=/usr; \ \ docker-php-ext-install gd mysqli zip exif intl mbstring; \ \ diff --git a/update.php b/update.php index 90bbea2..e217db9 100644 --- a/update.php +++ b/update.php @@ -86,7 +86,7 @@ '8.1' => array( 'php' => array( 'base_name' => 'php:8.1-fpm', - 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libzip-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync', 'libxslt-dev' ), + 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libavif-dev', 'libaom-dev', 'libdav1d-dev', 'libheif-dev', 'libzip-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync', 'libxslt-dev' ), 'extensions' => array( 'gd', 'opcache', 'mysqli', 'zip', 'exif', 'intl', 'mbstring', 'xml', 'xsl' ), 'pecl_extensions' => array( 'memcached-3.3.0', 'xdebug-3.4.0', 'imagick' ), 'composer' => true, @@ -100,7 +100,7 @@ '8.2' => array( 'php' => array( 'base_name' => 'php:8.2-fpm', - 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libzip-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync', 'libxslt-dev' ), + 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libavif-dev', 'libaom-dev', 'libdav1d-dev', 'libheif-dev', 'libzip-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync', 'libxslt-dev' ), 'extensions' => array( 'gd', 'opcache', 'mysqli', 'zip', 'exif', 'intl', 'mbstring', 'xml', 'xsl' ), 'pecl_extensions' => array( 'memcached-3.3.0', 'xdebug-3.4.0', 'imagick' ), 'composer' => true, @@ -114,7 +114,7 @@ '8.3' => array( 'php' => array( 'base_name' => 'php:8.3-fpm', - 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libzip-dev', 'libssl-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync', 'libxslt-dev' ), + 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libavif-dev', 'libaom-dev', 'libheif-dev', 'libzip-dev', 'libssl-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync', 'libxslt-dev' ), 'extensions' => array( 'gd', 'opcache', 'mysqli', 'zip', 'exif', 'intl', 'mbstring', 'xml', 'xsl' ), 'pecl_extensions' => array( 'memcached-3.3.0', 'xdebug-3.4.0', 'imagick' ), 'composer' => true, @@ -128,7 +128,7 @@ '8.4' => array( 'php' => array( 'base_name' => 'php:8.4-fpm', - 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libzip-dev', 'libssl-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync', 'libxslt-dev' ), + 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libavif-dev', 'libaom-dev', 'libdav1d-dev', 'libheif-dev', 'libzip-dev', 'libssl-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync', 'libxslt-dev' ), 'extensions' => array( 'gd', 'opcache', 'mysqli', 'zip', 'exif', 'intl', 'mbstring', 'xml', 'xsl' ), 'pecl_extensions' => array( 'memcached-3.3.0', 'xdebug-3.4.0', 'imagick' ), 'composer' => true, @@ -142,7 +142,7 @@ '8.5' => array( 'php' => array( 'base_name' => 'php:8.5-rc-fpm', - 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libzip-dev', 'libssl-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync' ), + 'apt' => array( 'libjpeg-dev', 'libpng-dev', 'libwebp-dev', 'libavif-dev', 'libaom-dev', 'libdav1d-dev', 'libheif-dev', 'libzip-dev', 'libssl-dev', 'libmemcached-dev', 'unzip', 'libmagickwand-dev', 'ghostscript', 'libonig-dev', 'locales', 'sudo', 'rsync' ), 'extensions' => array( 'gd', 'mysqli', 'zip', 'exif', 'intl', 'mbstring' ), 'pecl_extensions' => array(), 'composer' => true, @@ -430,11 +430,34 @@ if ( in_array( 'gd', $config['extensions'], true ) ) { $install_extensions .= " \\\n\t\\\n\t"; + $gd_options = array(); + + if ( version_compare( $version, '7.4' ) >= 0 ) { - $install_extensions .= "docker-php-ext-configure gd --enable-gd --with-jpeg=/usr --with-webp=/usr;"; + $gd_options = array_merge( + array( + '--with-jpeg=/usr', + '--with-webp=/usr', + ), + $gd_options + ); } else { - $install_extensions .= "docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr --with-webp-dir=/usr;"; + $gd_options = array_merge( + array( + '--with-gd', + '--with-jpeg-dir=/usr', + '-with-png-dir=/usr', + '--with-webp-dir=/usr', + ), + $gd_options + ); } + + if ( version_compare( $version, '8.1' ) >= 0 ) { + $gd_options[] = '--with-avif=/usr'; + } + + $install_extensions .= 'docker-php-ext-configure gd ' . implode( ' ', $gd_options ) . ';'; } if ( $config['extensions'] ) {