RUN set -ex \
&& apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS imagemagick-dev libtool \
&& export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" \
&& pecl install imagick-3.4.3 \
&& docker-php-ext-enable imagick \
&& apk add --no-cache --virtual .imagick-runtime-deps imagemagick \
&& apk del .phpize-deps
Last active
August 5, 2024 06:22
-
-
Save johndatserakis/825a16a7f3cef4e8b4dbfbb1e80b9f9c to your computer and use it in GitHub Desktop.
Install imagick In Docker FROM php:7.1-fpm-alpine
Super helpful. Thank you.
I found that uninstalling gcc
broke imagick with PHP Warning: PHP Startup: Unable to load dynamic library 'imagick'
though.
I ended up using this:
# Needed by phpize and imagick. These can be removed. Same thing as 'imagemagick-dev $PHPIZE_DEPS', but without gcc
apk add --no-cache --virtual .build-deps imagemagick-dev autoconf dpkg-dev file g++ libc-dev make pkgconf re2c
# Needed by phpize and imagick. Cannot remove these.
apk add --no-cache imagemagick gcc
printf "\n" | pecl install imagick
docker-php-ext-enable imagick
php -v
php -m
apk del .build-deps
I found that uninstalling
gcc
broke imagick
I don't think imagick needs gcc. I think the problem is that when you uninstall gcc, apk will also uninstall other system libraries that are required by imagick.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
To install and build the
imagemagick
extension, theDockerfile
contents are as follows: