Repository navigation
Conversation
Add webdevops/php, php-dev, php-nginx, php-nginx-dev, php-apache and php-apache-dev 8.6 (Debian and Alpine) based on the official PHP 8.6 release candidate images. - Debian 8.6 uses trixie: GD in PHP 8.6 needs libavif >= 1.0.0, which bookworm does not ship. PHP 8.2-8.5 stay on bookworm. - The official 8.6 images no longer bundle mbstring; build it with oniguruma. - vips and xmlrpc are not built for PHP 8.6: both are abandoned upstream and do not build against 8.6. They remain in the 8.2-8.5 images. - Install the memcached runtime library explicitly; on trixie it was removed together with the purged dev packages. Temporary workarounds until upstream releases support PHP 8.6 (marked "TODO PHP 8.6"): - release candidate base images; the version test accepts RCs for 8.6 - apcu, excimer, memcached, yaml and redis from their development branches via PIE - amqp from the unmerged fix php-amqp/php-amqp#638 (pinned commit) - protobuf: replace the removed zval_dtor() alias - Xdebug from the 3.6 pre-releases - no Tideways in the Debian 8.6 dev images: tideways-php 5.47.0 crashes PHP 8.6.0RC4 (ZTS) on startup - Alpine dev images install the Blackfire probe directly: `blackfire php:install` picks the glibc probe on Alpine with ZTS Template cleanups that avoid new distribution switches (all Debian images): - signed-by keyrings for the nginx.org and Tideways repositories instead of apt-key (removed in trixie) - bind9-dnsutils and libfreetype-dev instead of transitional packages - libc-client packages only for PHP 8.2/8.3 (imap) - oniguruma packages installed unconditionally - drop unused pre-bookworm branches
No generated Dockerfile changes. - Drop template macros no image uses anymore (CentOS, Debian 7-10, Ubuntu 12-18, bootstrap.ubuntuOld, nginx.ubuntu). - Unify the identical apache.debian9/debian12 macros as apache.debian() (PHP 8.2 still used the debian9 alias). - bootstrap.debian() no longer needs a distribution argument: all Debian images use deb822 sources. - Remove dangling docker/php/7.x and 8.0 symlinks (php-official 7.x/8.0 no longer exist). - Mark PHP 7.4 and 8.0 tags as deprecated in the documentation.
|
There was a problem hiding this comment.
SonarCloud found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.
This was referenced Nov 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.




Follow-up to PHP86_PR. A PR here cannot be stacked on a fork branch, so this branch contains the PHP 8.6 commit as its base. Please review only the last commit (
[TASK] Remove unused legacy distribution templates). I will rebase it once PHP86_PR is merged.No generated Dockerfile changes.
make provisionandci/console github:generate-ciproduce identical output.bootstrap.ubuntuOldandnginx.ubuntu.apache.debian9andapache.debian12were identical. They are now oneapache.debian(); PHP 8.2 still used thedebian9alias.bootstrap.debian()no longer takes a distribution argument, because all Debian images use deb822 sources.docker/php/7.xand8.0symlinks;php-official7.x/8.0 no longer exist.The cleanup itself does not depend on the PHP 8.6 workarounds. If it should land before 8.6, I can rebase it onto
masterwithout the 8.6 commit