Skip to content

build(ddev-webserver): move ddev-webserver base image to debian trixie #7492

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 13 commits into from

Conversation

rfay
Copy link
Member

@rfay rfay commented Jul 29, 2025

The Issue

In DDEV v1.25.0 we expect to migrate the base image for ddev-webserver to debian trixie v13.

I know this is jumping the gun. I was inspired by #7484 from @GuySartorelli but they reported later it wasn't a fix. I did it anyway. There were a few workarounds required to get the various components going.

TODO

  • Convince blackfire to go to a newer key type (or maybe they have and we're using an old recipe (revert workaround ) I requested this change in their discord
  • Get mariadb to support Debian Trixie with their client installer package (revert workaround d25f4c0 ) https://jira.mariadb.org/browse/MDEV-37241
  • Adjust MariaDB client setup expectations (and ours). See https://jira.mariadb.org/browse/MDEV-37241 "Because MariaDB downgrades, particularly with packages, aren't supported or tested the Trixie package will begin at 11.8 and there will be no 11.4 packages."
  • Get full support for needed PHP extensions from deb.sury.org and (revert workaround 35ecc77 ) - see Debian Trixie missing packages for some versions (apcu-bc, memcached, redis) oerdnj/deb.sury.org#2330
  • Re-enable memcached/redis tests after deb.sury.org updated, revert 35ecc77
  • The base install of mariadb-client is explicitly using debian 12 and probably needs to be updated,
    RUN if [ "$(dpkg --print-architecture)" = "arm64" ]; then cd /tmp && curl -L -s --fail -O "https://dlm.mariadb.com/3607865/MariaDB/mariadb-10.11.6/repo/debian/pool/main/m/mariadb/mariadb-client_10.11.6+maria~deb12_arm64.deb" -O "https://dlm.mariadb.com/3607494/MariaDB/mariadb-10.11.6/repo/debian/pool/main/m/mariadb/mariadb-client-core_10.11.6+maria~deb12_arm64.deb"; fi
    RUN if [ "$(dpkg --print-architecture)" = "amd64" ]; then cd /tmp && curl -L -s --fail -O "https://dlm.mariadb.com/3607675/MariaDB/mariadb-10.11.6/repo/debian/pool/main/m/mariadb/mariadb-client_10.11.6+maria~deb12_amd64.deb" -O "https://dlm.mariadb.com/3607123/MariaDB/mariadb-10.11.6/repo/debian/pool/main/m/mariadb/mariadb-client-core_10.11.6+maria~deb12_amd64.deb"; fi

How This PR Solves The Issue

  • Use Trixie as base
  • Remove terrible sqlite 3.45.1 hacks for Drupal 11
  • Experimental: Use Debian trixie nginx packages instead of nginx.org
  • Upgrade libmagiccore

Manual Testing Instructions

Try it out

Automated Testing Overview

Release/Deployment Notes

@github-actions github-actions bot added dependencies Pull requests that update a dependency file maintenance labels Jul 29, 2025
Copy link

github-actions bot commented Jul 29, 2025

@rfay rfay force-pushed the 20250728_rfay_debian_trixie branch from 3c7902a to 1557b16 Compare July 30, 2025 12:56
rfay and others added 11 commits July 30, 2025 07:28
…lity

Based on test results from test_web_packages.sh (2025-07-28), temporarily remove
packages that are missing from the Sury repository for Debian Trixie:

- memcached: missing for php5.6 (arm64), php7.0-8.4 (all architectures)
- redis: missing for php7.0-7.3 (all architectures)
- apcu-bc: missing for php5.6-8.3 (all architectures)
- json: missing for php8.0+ (all architectures) - NOTE: JSON is built into PHP 8.0+ core, so this is expected behavior

This is an experimental workaround to allow DDEV container builds on Debian
Trixie while waiting for the Sury repository to be updated.

Related issue: https://github.com/oerdnj/deb.sury.org/issues/TBD

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
This replaces d25f4c0
That workaround is no longer needed.
@rfay rfay force-pushed the 20250728_rfay_debian_trixie branch from 1557b16 to 2fb419b Compare July 30, 2025 13:28
@rfay
Copy link
Member Author

rfay commented Jul 30, 2025

It passes tests! I'll leave this as draft and try to poke at the action items. I don't expect that we would do this until v1.25.0, which should also include PHP 8.5.

@rfay rfay force-pushed the 20250728_rfay_debian_trixie branch from 7d46a46 to e5b91b8 Compare July 30, 2025 20:52
@rfay
Copy link
Member Author

rfay commented Jul 31, 2025

@stasadev I don't remember a reason that we used the upstream nginx.org packages, but it probably dates back a couple of Debian versions.

https://github.com/ddev/ddev/pull/7492/files#diff-ddc28b17c63eedfc281d63de8ae258a7b18a40b47b68b275df4c460a630cdcf2R36-R40

@stasadev
Copy link
Member

a reason that we used the upstream nginx.org packages

I traced it back to:

But I didn't find a reason why nginx repo was added.

@rfay
Copy link
Member Author

rfay commented Jul 31, 2025

Jessie in 2018! I think we should probably go with the Debian stuff.

@rfay
Copy link
Member Author

rfay commented Aug 5, 2025

I'm closing this for now, will reopen when we get closer. All of the external requests have been made, and all can be worked around if we need to... except the problems with deb.sury.org.

@rfay rfay closed this Aug 5, 2025
@rfay
Copy link
Member Author

rfay commented Aug 7, 2025

Adjust MariaDB client setup expectations (and ours). See https://jira.mariadb.org/browse/MDEV-37241 "Because MariaDB downgrades, particularly with packages, aren't supported or tested the Trixie package will begin at 11.8 and there will be no 11.4 packages."

@rfay rfay changed the title build: Move ddev-webserver base image to debian trixie build: move ddev-webserver base image to debian trixie Aug 7, 2025
@rfay rfay changed the title build: move ddev-webserver base image to debian trixie build(ddev-webserver): move ddev-webserver base image to debian trixie Aug 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file future-reopen maintenance
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants