Using Imagick extension with PHP 8.3 on Docker
If you use the imagick extension on PHP 8.2 or earlier, it is quite straightforward to install on Docker.
RUN pecl install imagick && \
docker-php-ext-enable imagick
But currently, and for some time the PECL version of the extension is broken on PHP 8.3.
Instead, as a workaround, you can build the extension from official repository’s master branch:
RUN apk add git --update --no-cache && \
git clone https://github.com/Imagick/imagick.git --depth 1 /tmp/imagick && \
cd /tmp/imagick && \
git fetch origin master && \
git switch master && \
cd /tmp/imagick && \
phpize && \
./configure && \
make && \
make install && \
apk del git && \
docker-php-ext-enable imagick
The master version on the imagick repository is compatible with PHP 8.3.
However, the PECL version is not updated yet.
Hopefully, it will get updated soon and we can switch back to the PECL version, instead of having this workaround.