Si vous avez déjà joué avec des conteneurs Docker et du PHP, vous avez certainement été confrontés à un problème quand est venu le besoin de mettre en place une extension qui n’est pas directement supporté par PHP mais disponible via PECL, voyons comment faire
Un outil à la rescousse
Vous devez sans doute connaitre docker-php-ext-install qui vous permet d’installer des extensions PHP officielles proposées directement par PHP. Pour installer des extensions PECL, il vous faudra l’excellent outil install-php-extensions
Cet outil se trouve sur Github dans le repository mlocati/docker-php-extension-installer
Comment s’en servir ?
Et bien c’est tout simple, dans votre Dockerfile, c’est de cette façon :
FROM php:8.4-cli ADD --chmod=0755 https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/ RUN install-php-extensions oauth
Le ADD viendra ajouter le binaire à votre compilation, rendant ainsi disponible l’outil qui se chargera de compiler et d’installer l’extension oauth dans notre cas
L’outil fonctionne avec les images basées sur Debian et Alpine, à vous la possibilité d’installer les extensions pour les versions de 7.1 à 8.4 de PHP, de quoi couvrir un grand nombre de besoins et cas d’utilisation.



