Skip to content

Commit deea86a

Browse files
committed
PHP: Update to Debian 13 (Trixie) based images & remove IMAP extension
1 parent d446e03 commit deea86a

24 files changed

+241
-234
lines changed

README.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ unoptimized, unmaintained)
6464
[`gd`](https://www.php.net/manual/en/book.image.php) with PNG, WebP, AVIF, FreeType fonts support
6565
[`gettext`](https://www.php.net/manual/en/book.gettext.php),
6666
[`gmp`](https://www.php.net/manual/en/book.gmp.php),
67-
[`imap`](https://www.php.net/manual/en/book.imap.php) (up to PHP 8.3),
6867
[`intl`](https://www.php.net/manual/en/book.intl.php),
6968
[`memcached`](https://www.php.net/manual/en/book.memcached.php),
7069
[`mysqli`](https://www.php.net/manual/en/book.mysqli.php),
@@ -87,6 +86,14 @@ unoptimized, unmaintained)
8786
- timezones are correctly supported
8887
- optimized for small image size and short load times
8988

89+
### Removed extensions
90+
91+
Certain PHP extensions have been intentionally excluded from these images because they are deprecated and interfere with
92+
compatibility with important updates of other components.
93+
94+
| Package | Available up to | Reason to remove |
95+
|---------|--------------------------------------------------------------------------------|--------------------------|
96+
| `imap` | `8.3.24`, `8.2.28`, and `8.1.32`, and remains in legacy images (8.0 and older) | incompatible w/Debian 13 |
9097

9198
## Basic usage
9299
Copy the [`docker-compose.yml`](docker-compose.yml) file

check-pulls.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,16 @@
33
# shellcheck disable=SC2086
44
set -eux;
55

6-
docker pull php:8.1-cli-bookworm
7-
docker pull php:8.1-apache-bookworm
8-
docker pull php:8.2-cli-bookworm
9-
docker pull php:8.2-apache-bookworm
10-
docker pull php:8.3-cli-bookworm
11-
docker pull php:8.3-apache-bookworm
12-
docker pull php:8.4-cli-bookworm
13-
docker pull php:8.4-apache-bookworm
14-
docker pull php:8.5-rc-cli-bookworm
15-
docker pull php:8.5-rc-apache-bookworm
6+
docker pull php:8.1-cli-trixie
7+
docker pull php:8.1-apache-trixie
8+
docker pull php:8.2-cli-trixie
9+
docker pull php:8.2-apache-trixie
10+
docker pull php:8.3-cli-trixie
11+
docker pull php:8.3-apache-trixie
12+
docker pull php:8.4-cli-trixie
13+
docker pull php:8.4-apache-trixie
14+
docker pull php:8.5-rc-cli-trixie
15+
docker pull php:8.5-rc-apache-trixie
1616

1717
docker pull mariadb:10.6
1818
docker pull mariadb:10.11

php/Dockerfile-8.1

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM php:8.1-apache-bookworm
1+
FROM php:8.1-apache-trixie
22

33
LABEL maintainer="Jakub Bouček <[email protected]>"
44
LABEL org.label-schema.name="PHP 8.1 (Apache module)"
@@ -8,20 +8,18 @@ LABEL org.label-schema.vcs-url="https://github.com/jakubboucek/docker-lamp-devst
88
WORKDIR /tmp
99

1010
# Use local mirrors to install Debian updates
11-
COPY sources.list-bookworm /etc/apt/sources.list
11+
COPY sources.list-trixie /etc/apt/sources.list
1212

1313
# Prevent interactive block
1414
ARG DEBIAN_FRONTEND=noninteractive
1515

1616
ARG EXTENSION_DEV_DEPS=" \
1717
libavif-dev \
1818
libbz2-dev \
19-
libc-client-dev \
2019
libfreetype6-dev \
2120
libgmp-dev \
2221
libicu-dev \
2322
libjpeg62-turbo-dev \
24-
libkrb5-dev \
2523
libmemcached-dev \
2624
libpng-dev \
2725
libsodium-dev \
@@ -32,35 +30,36 @@ ARG EXTENSION_DEV_DEPS=" \
3230
"
3331

3432
ARG EXTENSION_RUNTIME_DEPS=" \
35-
libabsl20220623 \
33+
libabsl20240722 \
3634
libaom3 \
37-
libavif15 \
35+
libavif16 \
3836
libbrotli1 \
39-
libc-client2007e \
40-
libdav1d6 \
37+
libbz2-1.0 \
38+
libdav1d7 \
4139
libfreetype6 \
4240
libgav1-1 \
4341
libgcrypt20 \
4442
libgmp10 \
45-
libgssapi-krb5-2 \
46-
libhashkit2 \
47-
libicu72 \
43+
libgpg-error0 \
44+
libhashkit2t64 \
45+
libicu76 \
4846
libjpeg62-turbo \
49-
libk5crypto3 \
50-
libkrb5-3 \
51-
libkrb5support0 \
52-
libmemcached11 \
53-
libpng16-16 \
54-
librav1e0 \
47+
liblzma5 \
48+
libmemcached11t64 \
49+
libpng16-16t64 \
50+
librav1e0.7 \
5551
libsasl2-2 \
52+
libsharpyuv0 \
5653
libsodium23 \
57-
libssl3 \
58-
libsvtav1enc1 \
54+
libssl3t64 \
55+
libsvtav1enc2 \
5956
libwebp7 \
6057
libxml2 \
6158
libxslt1.1 \
6259
libyuv0 \
63-
libzip4 \
60+
libzip5 \
61+
libzstd1 \
62+
zlib1g \
6463
"
6564

6665
# OS binaries install && update critical binaries
@@ -77,8 +76,6 @@ RUN set -eux; \
7776
zip; \
7877
docker-php-ext-configure \
7978
gd --with-avif --with-freetype --with-jpeg --with-webp; \
80-
docker-php-ext-configure \
81-
imap --with-kerberos --with-imap-ssl; \
8279
docker-php-ext-install -j$(nproc) \
8380
bcmath \
8481
bz2 \
@@ -87,7 +84,6 @@ RUN set -eux; \
8784
gd \
8885
gettext \
8986
gmp \
90-
imap \
9187
intl \
9288
mysqli \
9389
opcache \
@@ -107,9 +103,9 @@ RUN set -eux; \
107103
expires \
108104
headers \
109105
rewrite; \
110-
pecl clear-cache; \
111106
apt-mark manual ${EXTENSION_RUNTIME_DEPS}; \
112107
apt-get purge -y --auto-remove ${EXTENSION_DEV_DEPS}; \
108+
pecl clear-cache; \
113109
apt-get clean -y && \
114110
apt-get autoclean -y && \
115111
apt-get autoremove -y && \

php/Dockerfile-8.1-cli

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM php:8.1-cli-bookworm
1+
FROM php:8.1-cli-trixie
22

33
LABEL maintainer="Jakub Bouček <[email protected]>"
44
LABEL org.label-schema.name="PHP 8.1 (CLI)"
@@ -8,20 +8,18 @@ LABEL org.label-schema.vcs-url="https://github.com/jakubboucek/docker-lamp-devst
88
WORKDIR /tmp
99

1010
# Use local mirrors to install Debian updates
11-
COPY sources.list-bookworm /etc/apt/sources.list
11+
COPY sources.list-trixie /etc/apt/sources.list
1212

1313
# Prevent interactive block
1414
ARG DEBIAN_FRONTEND=noninteractive
1515

1616
ARG EXTENSION_DEV_DEPS=" \
1717
libavif-dev \
1818
libbz2-dev \
19-
libc-client-dev \
2019
libfreetype6-dev \
2120
libgmp-dev \
2221
libicu-dev \
2322
libjpeg62-turbo-dev \
24-
libkrb5-dev \
2523
libmemcached-dev \
2624
libpng-dev \
2725
libsodium-dev \
@@ -32,35 +30,36 @@ ARG EXTENSION_DEV_DEPS=" \
3230
"
3331

3432
ARG EXTENSION_RUNTIME_DEPS=" \
35-
libabsl20220623 \
33+
libabsl20240722 \
3634
libaom3 \
37-
libavif15 \
35+
libavif16 \
3836
libbrotli1 \
39-
libc-client2007e \
40-
libdav1d6 \
37+
libbz2-1.0 \
38+
libdav1d7 \
4139
libfreetype6 \
4240
libgav1-1 \
4341
libgcrypt20 \
4442
libgmp10 \
45-
libgssapi-krb5-2 \
46-
libhashkit2 \
47-
libicu72 \
43+
libgpg-error0 \
44+
libhashkit2t64 \
45+
libicu76 \
4846
libjpeg62-turbo \
49-
libk5crypto3 \
50-
libkrb5-3 \
51-
libkrb5support0 \
52-
libmemcached11 \
53-
libpng16-16 \
54-
librav1e0 \
47+
liblzma5 \
48+
libmemcached11t64 \
49+
libpng16-16t64 \
50+
librav1e0.7 \
5551
libsasl2-2 \
52+
libsharpyuv0 \
5653
libsodium23 \
57-
libssl3 \
58-
libsvtav1enc1 \
54+
libssl3t64 \
55+
libsvtav1enc2 \
5956
libwebp7 \
6057
libxml2 \
6158
libxslt1.1 \
6259
libyuv0 \
63-
libzip4 \
60+
libzip5 \
61+
libzstd1 \
62+
zlib1g \
6463
"
6564

6665
# OS binaries install && update critical binaries
@@ -77,8 +76,6 @@ RUN set -eux; \
7776
zip; \
7877
docker-php-ext-configure \
7978
gd --with-avif --with-freetype --with-jpeg --with-webp; \
80-
docker-php-ext-configure \
81-
imap --with-kerberos --with-imap-ssl; \
8279
docker-php-ext-install -j$(nproc) \
8380
bcmath \
8481
bz2 \
@@ -87,7 +84,6 @@ RUN set -eux; \
8784
gd \
8885
gettext \
8986
gmp \
90-
imap \
9187
intl \
9288
mysqli \
9389
opcache \
@@ -103,9 +99,9 @@ RUN set -eux; \
10399
zip; \
104100
pecl install memcached; \
105101
docker-php-ext-enable memcached; \
106-
pecl clear-cache; \
107102
apt-mark manual ${EXTENSION_RUNTIME_DEPS}; \
108103
apt-get purge -y --auto-remove ${EXTENSION_DEV_DEPS}; \
104+
pecl clear-cache; \
109105
apt-get clean -y && \
110106
apt-get autoclean -y && \
111107
apt-get autoremove -y && \

php/Dockerfile-8.2

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM php:8.2-apache-bookworm
1+
FROM php:8.2-apache-trixie
22

33
LABEL maintainer="Jakub Bouček <[email protected]>"
44
LABEL org.label-schema.name="PHP 8.2 (Apache module)"
@@ -8,20 +8,18 @@ LABEL org.label-schema.vcs-url="https://github.com/jakubboucek/docker-lamp-devst
88
WORKDIR /tmp
99

1010
# Use local mirrors to install Debian updates
11-
COPY sources.list-bookworm /etc/apt/sources.list
11+
COPY sources.list-trixie /etc/apt/sources.list
1212

1313
# Prevent interactive block
1414
ARG DEBIAN_FRONTEND=noninteractive
1515

1616
ARG EXTENSION_DEV_DEPS=" \
1717
libavif-dev \
1818
libbz2-dev \
19-
libc-client-dev \
2019
libfreetype6-dev \
2120
libgmp-dev \
2221
libicu-dev \
2322
libjpeg62-turbo-dev \
24-
libkrb5-dev \
2523
libmemcached-dev \
2624
libpng-dev \
2725
libsodium-dev \
@@ -32,35 +30,36 @@ ARG EXTENSION_DEV_DEPS=" \
3230
"
3331

3432
ARG EXTENSION_RUNTIME_DEPS=" \
35-
libabsl20220623 \
33+
libabsl20240722 \
3634
libaom3 \
37-
libavif15 \
35+
libavif16 \
3836
libbrotli1 \
39-
libc-client2007e \
40-
libdav1d6 \
37+
libbz2-1.0 \
38+
libdav1d7 \
4139
libfreetype6 \
4240
libgav1-1 \
4341
libgcrypt20 \
4442
libgmp10 \
45-
libgssapi-krb5-2 \
46-
libhashkit2 \
47-
libicu72 \
43+
libgpg-error0 \
44+
libhashkit2t64 \
45+
libicu76 \
4846
libjpeg62-turbo \
49-
libk5crypto3 \
50-
libkrb5-3 \
51-
libkrb5support0 \
52-
libmemcached11 \
53-
libpng16-16 \
54-
librav1e0 \
47+
liblzma5 \
48+
libmemcached11t64 \
49+
libpng16-16t64 \
50+
librav1e0.7 \
5551
libsasl2-2 \
52+
libsharpyuv0 \
5653
libsodium23 \
57-
libssl3 \
58-
libsvtav1enc1 \
54+
libssl3t64 \
55+
libsvtav1enc2 \
5956
libwebp7 \
6057
libxml2 \
6158
libxslt1.1 \
6259
libyuv0 \
63-
libzip4 \
60+
libzip5 \
61+
libzstd1 \
62+
zlib1g \
6463
"
6564

6665
# OS binaries install && update critical binaries
@@ -77,8 +76,6 @@ RUN set -eux; \
7776
zip; \
7877
docker-php-ext-configure \
7978
gd --with-avif --with-freetype --with-jpeg --with-webp; \
80-
docker-php-ext-configure \
81-
imap --with-kerberos --with-imap-ssl; \
8279
docker-php-ext-install -j$(nproc) \
8380
bcmath \
8481
bz2 \
@@ -87,7 +84,6 @@ RUN set -eux; \
8784
gd \
8885
gettext \
8986
gmp \
90-
imap \
9187
intl \
9288
mysqli \
9389
opcache \
@@ -107,9 +103,9 @@ RUN set -eux; \
107103
expires \
108104
headers \
109105
rewrite; \
110-
pecl clear-cache; \
111106
apt-mark manual ${EXTENSION_RUNTIME_DEPS}; \
112107
apt-get purge -y --auto-remove ${EXTENSION_DEV_DEPS}; \
108+
pecl clear-cache; \
113109
apt-get clean -y && \
114110
apt-get autoclean -y && \
115111
apt-get autoremove -y && \

0 commit comments

Comments
 (0)