Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 17 additions & 10 deletions 8.1/bookworm/apache/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ LABEL com.bmeme.project.family='PHP Docker Image' \
com.bmeme.project.version="${PHP_VERSION}-apache-bookworm" \
com.bmeme.maintainer.1='Daniele Piaggesi <daniele.piaggesi@bmeme.com>' \
com.bmeme.maintainer.2='Roberto Mariani <roberto.mariani@bmeme.com>' \
com.bmeme.refreshedat='2025-12-22'
com.bmeme.refreshedat='2026-01-07'

# Variables
ENV COMPOSER_HOME=/var/www/.composer \
Expand Down Expand Up @@ -63,7 +63,13 @@ ENV PERSISTENT_PROGRAMS="\
vim \
zip \
curl \
ca-certificates"
ca-certificates \
libpng16-16 \
libzip4 \
libmcrypt4 \
libwebp7 \
libjpeg62-turbo \
libfreetype6"

WORKDIR /var/www/html

Expand Down Expand Up @@ -115,16 +121,9 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
--with-webp=/usr \
; \
docker-php-ext-configure intl; \
docker-php-ext-configure zip; \
docker-php-ext-configure redis \
--enable-redis-igbinary \
--enable-redis-lzf \
;\
\
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
; \
\
docker-php-ext-install -j "$(nproc)" \
Expand All @@ -138,11 +137,19 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
zip \
; \
\
# Enable extensions explicitly (safer/clearer)
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
redis \
; \
\
# 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 }' \
| awk '/=>/ && $3 ~ /^\// { print $3 }' \
| sort -u \
| xargs -r dpkg-query -S \
| cut -d: -f1 \
Expand Down
28 changes: 18 additions & 10 deletions 8.1/trixie/apache/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ LABEL com.bmeme.project.family='PHP Docker Image' \
com.bmeme.project.version="${PHP_VERSION}-apache-trixie" \
com.bmeme.maintainer.1='Daniele Piaggesi <daniele.piaggesi@bmeme.com>' \
com.bmeme.maintainer.2='Roberto Mariani <roberto.mariani@bmeme.com>' \
com.bmeme.refreshedat='2025-12-22'
com.bmeme.refreshedat='2026-01-07'

# Variables
ENV COMPOSER_HOME=/var/www/.composer \
Expand Down Expand Up @@ -63,7 +63,14 @@ ENV PERSISTENT_PROGRAMS="\
vim \
zip \
curl \
ca-certificates"
ca-certificates \
libpng16-16 \
libjpeg62-turbo \
libwebp7 \
libfreetype6 \
libzip5 \
libmcrypt4 \
libicu76"

WORKDIR /var/www/html

Expand Down Expand Up @@ -115,16 +122,9 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
--with-webp=/usr \
; \
docker-php-ext-configure intl; \
docker-php-ext-configure zip; \
docker-php-ext-configure redis \
--enable-redis-igbinary \
--enable-redis-lzf \
;\
\
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
; \
\
docker-php-ext-install -j "$(nproc)" \
Expand All @@ -138,11 +138,19 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
zip \
; \
\
# Enable extensions explicitly (safer/clearer)
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
redis \
; \
\
# 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 }' \
| awk '/=>/ && $3 ~ /^\// { print $3 }' \
| sort -u \
| xargs -r dpkg-query -S \
| cut -d: -f1 \
Expand Down
27 changes: 17 additions & 10 deletions 8.2/bookworm/apache/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ LABEL com.bmeme.project.family='PHP Docker Image' \
com.bmeme.project.version="${PHP_VERSION}-apache-bookworm" \
com.bmeme.maintainer.1='Daniele Piaggesi <daniele.piaggesi@bmeme.com>' \
com.bmeme.maintainer.2='Roberto Mariani <roberto.mariani@bmeme.com>' \
com.bmeme.refreshedat='2025-12-22'
com.bmeme.refreshedat='2026-01-07'

# Variables
ENV COMPOSER_HOME=/var/www/.composer \
Expand Down Expand Up @@ -63,7 +63,13 @@ ENV PERSISTENT_PROGRAMS="\
vim \
zip \
curl \
ca-certificates"
ca-certificates \
libpng16-16 \
libzip4 \
libmcrypt4 \
libwebp7 \
libjpeg62-turbo \
libfreetype6"

WORKDIR /var/www/html

Expand Down Expand Up @@ -115,16 +121,9 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
--with-webp=/usr \
; \
docker-php-ext-configure intl; \
docker-php-ext-configure zip; \
docker-php-ext-configure redis \
--enable-redis-igbinary \
--enable-redis-lzf \
;\
\
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
; \
\
docker-php-ext-install -j "$(nproc)" \
Expand All @@ -138,11 +137,19 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
zip \
; \
\
# Enable extensions explicitly (safer/clearer)
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
redis \
; \
\
# 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 }' \
| awk '/=>/ && $3 ~ /^\// { print $3 }' \
| sort -u \
| xargs -r dpkg-query -S \
| cut -d: -f1 \
Expand Down
28 changes: 18 additions & 10 deletions 8.2/trixie/apache/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ LABEL com.bmeme.project.family='PHP Docker Image' \
com.bmeme.project.version="${PHP_VERSION}-apache-trixie" \
com.bmeme.maintainer.1='Daniele Piaggesi <daniele.piaggesi@bmeme.com>' \
com.bmeme.maintainer.2='Roberto Mariani <roberto.mariani@bmeme.com>' \
com.bmeme.refreshedat='2025-12-22'
com.bmeme.refreshedat='2026-01-07'

# Variables
ENV COMPOSER_HOME=/var/www/.composer \
Expand Down Expand Up @@ -63,7 +63,14 @@ ENV PERSISTENT_PROGRAMS="\
vim \
zip \
curl \
ca-certificates"
ca-certificates \
libpng16-16 \
libjpeg62-turbo \
libwebp7 \
libfreetype6 \
libzip5 \
libmcrypt4 \
libicu76"

WORKDIR /var/www/html

Expand Down Expand Up @@ -115,16 +122,9 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
--with-webp=/usr \
; \
docker-php-ext-configure intl; \
docker-php-ext-configure zip; \
docker-php-ext-configure redis \
--enable-redis-igbinary \
--enable-redis-lzf \
;\
\
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
; \
\
docker-php-ext-install -j "$(nproc)" \
Expand All @@ -138,11 +138,19 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
zip \
; \
\
# Enable extensions explicitly (safer/clearer)
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
redis \
; \
\
# 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 }' \
| awk '/=>/ && $3 ~ /^\// { print $3 }' \
| sort -u \
| xargs -r dpkg-query -S \
| cut -d: -f1 \
Expand Down
36 changes: 24 additions & 12 deletions 8.3/bookworm/apache/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ FROM php:${PHP_VERSION}-apache-bookworm AS ansible
ENV DEBIAN_FRONTEND=noninteractive
ENV ANSIBLE_CORE_VERSION=2.17.14

RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/root/.cache/pip set -eux; \
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/root/.cache/pip set -eux; \
# install python
apt-get update && apt-get install -y --no-install-recommends python3 python3-distutils python3-pip; \
\
Expand All @@ -22,7 +23,7 @@ LABEL com.bmeme.project.family='PHP Docker Image' \
com.bmeme.project.version="${PHP_VERSION}-apache-bookworm" \
com.bmeme.maintainer.1='Daniele Piaggesi <daniele.piaggesi@bmeme.com>' \
com.bmeme.maintainer.2='Roberto Mariani <roberto.mariani@bmeme.com>' \
com.bmeme.refreshedat='2025-12-22'
com.bmeme.refreshedat='2026-01-07'

# Variables
ENV COMPOSER_HOME=/var/www/.composer \
Expand Down Expand Up @@ -63,7 +64,13 @@ ENV PERSISTENT_PROGRAMS="\
vim \
zip \
curl \
ca-certificates"
ca-certificates \
libpng16-16 \
libzip4 \
libmcrypt4 \
libwebp7 \
libjpeg62-turbo \
libfreetype6"

WORKDIR /var/www/html

Expand All @@ -77,7 +84,9 @@ COPY --from=ansible /usr/local/bin/ansible* /usr/local/bin/
COPY scripts/docker-php-entrypoint-env.sh /usr/local/bin/docker-php-entrypoint-env.sh

# install the PHP extensions we need
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/tmp/pear --mount=type=cache,target=/root/.cache/composer set -eux; \
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/tmp/pear \
--mount=type=cache,target=/root/.cache/composer set -eux; \
\
if command -v a2enmod; then \
a2enmod rewrite; \
Expand Down Expand Up @@ -115,16 +124,9 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
--with-webp=/usr \
; \
docker-php-ext-configure intl; \
docker-php-ext-configure zip; \
docker-php-ext-configure redis \
--enable-redis-igbinary \
--enable-redis-lzf \
;\
\
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
; \
\
docker-php-ext-install -j "$(nproc)" \
Expand All @@ -138,11 +140,21 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
zip \
; \
\
# Enable extensions explicitly (safer/clearer)
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
redis \
; \
\
# 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}; \
\
# IMPORTANT: ignore "not found" lines so we only keep real paths
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
| awk '/=>/ { print $3 }' \
| awk '/=>/ && $3 ~ /^\// { print $3 }' \
| sort -u \
| xargs -r dpkg-query -S \
| cut -d: -f1 \
Expand Down
28 changes: 18 additions & 10 deletions 8.3/trixie/apache/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ LABEL com.bmeme.project.family='PHP Docker Image' \
com.bmeme.project.version="${PHP_VERSION}-apache-trixie" \
com.bmeme.maintainer.1='Daniele Piaggesi <daniele.piaggesi@bmeme.com>' \
com.bmeme.maintainer.2='Roberto Mariani <roberto.mariani@bmeme.com>' \
com.bmeme.refreshedat='2025-12-22'
com.bmeme.refreshedat='2026-01-07'

# Variables
ENV COMPOSER_HOME=/var/www/.composer \
Expand Down Expand Up @@ -63,7 +63,14 @@ ENV PERSISTENT_PROGRAMS="\
vim \
zip \
curl \
ca-certificates"
ca-certificates \
libpng16-16 \
libjpeg62-turbo \
libwebp7 \
libfreetype6 \
libzip5 \
libmcrypt4 \
libicu76"

WORKDIR /var/www/html

Expand Down Expand Up @@ -115,16 +122,9 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
--with-webp=/usr \
; \
docker-php-ext-configure intl; \
docker-php-ext-configure zip; \
docker-php-ext-configure redis \
--enable-redis-igbinary \
--enable-redis-lzf \
;\
\
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
; \
\
docker-php-ext-install -j "$(nproc)" \
Expand All @@ -138,11 +138,19 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,t
zip \
; \
\
# Enable extensions explicitly (safer/clearer)
docker-php-ext-enable \
mcrypt \
igbinary \
oauth \
redis \
; \
\
# 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 }' \
| awk '/=>/ && $3 ~ /^\// { print $3 }' \
| sort -u \
| xargs -r dpkg-query -S \
| cut -d: -f1 \
Expand Down
Loading