-
-
Notifications
You must be signed in to change notification settings - Fork 202
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
Recent PHP 8 changes have broken imagick install in PHP 7.4 image #131
Comments
Could you test and check these images https://github.com/yiisoft/yii-docker ? |
That looks good.
Looks like it uses a different mechanism to install though. It uses |
And this?
Yes, we're using https://github.com/mlocati/docker-php-extension-installer in |
Yes I get that too:
That does not look good either. |
I remember reading that imagemagick has issues on PHP 8, so that might be the reason why they install from master. |
I get that, and that will somehow need to be resolved for PHP 8. But in the meantime, the existing image for PHP 7.4 has been broken. It used to be installed just fine in the PHP 7.4 version of the image and now it's broken. Can this be reverted, at least for the PHP 7.4 image? |
So, I'd rather go with the scripts from https://github.com/mlocati/docker-php-extension-installer if they are working fine, WDYT? |
Now I see why you were asking about that yii-php image :) Well, if you go that route, it will (should?) work in 7.4, but will remain broken in PHP 8. I guess that's a net win, but work would still need to be done for PHP 8 down the line. As I understand, due to using Docker build arguments, it's non-trivial to have a separate install process for 7.4? I guess you would need a separate Dockerfile (or an include) to do that which would mean too much refactoring to fix this by reverting to pecl just for 7.4. Is that accurate? Given that, then I say yeah, go for the docker-php-extension-installer. Question: In the yii-php repo you COPY from mlocati/php-extension-installer and not mlocati/docker-php-extension-installer. The former repo does not exist. Am I missing something there? |
I guess that's just the image vs. repo name. |
That's what the script collection from |
Hey all.
Today we had some failing pipelines that were using the
yii2-php:7.4-apache
image. Composer would fail due to an incompatible version of imagick. It was reporting that the installed version was@PACKAGE_VERSION@
I won't give you my build logs as there is an easy way to reproduce the problem without them.
I noticed that the problem was introduced on the new version of the image that was pushed 3 days ago (April 30th 2021) with digest
d0b43c241834
. I went back to a previous version of 7.4 and found7.4-apache-21.3.1
from a month ago which does not display the problem.Old version:
New version:
I think I tracked it down to the following changes:
Issue: #110
PR: #123
Commit: c7c94e4
Prior to the above change, imagick was installed with pecl. After the change it is installed by downloading a package from github.
When I follow the exact same install steps from a vanilla PHP 7.4 image, I get the same problem where
php -i
returns@PACKAGE_VERSION@
instead of the version number. Interestingly the same occurs even when running it against a PHP 8 image. I guess that install method is broken/incomplete?Also, is there a suitable immutable image tag that we should be using for this image?
Thanks,
Tom...
The text was updated successfully, but these errors were encountered: