Conversation
|
https://github.com/docker-library/official-images#repeatability
(meaning See also docker-library/php#1554 for a relevant discussion. Can you perhaps explain why this might be relevant to the WordPress image? Does the end result of the build actually change in any meaningful way? |
|
Oh I didn't know it's against policy. So what it means is that until php upstream switches from pecl (as it's deprecated now) to pie there won't be any way to get pie into official wp image? If I knew it wasn't desired I wouldn't have created this PR. I just heard that pecl is deprecated and in my custom images I've switched to pie and I thought maybe it's good idea to contribute it to upstream. One other reason was that in past pecl had problems with installing imagick. Feel free to close this PR if you think it's incorrect approach. Thank you for your time! |
PECL is officially deprecated as of https://wiki.php.net/rfc/adopt_pie_deprecate_pecl and a number of extension authors no longer publish new versions to PECL, making them only available via PIE / Packagist. By using PECL, the WordPress image is relying on unsupported and deprecated software. PIE should be used one way or another (whether that's by including it in the PHP base image, by downloading it from the GitHub releases or by mirroring the upstream ghcr.io/php/pie:bin image). |
This PR aims to replace PECL with PIE. I've opted for using bind mount for pie to not bloat the image with pie executable.
If we'd like to keep pie in the image then we can replace the bind mount with:
COPY --from=ghcr.io/php/pie:bin /pie /usr/local/bin/pieThe executable is around 12 MB.
Other caveats are that PHP base image is compiled with pear support so the PECL itself is still there.
Let me know if this PR is acceptable or you require any changes.