Mi problema no fue idéntico, pero dado que esta pregunta fue la primera en aparecer con respuestas que finalmente fueron muy útiles, agregaré mis comentarios.
Estaba teniendo problemas para hacer que PHP (bajo Centos7 ejecutándose en un contenedor docker) usara MySQL debido a la configuración del directorio, aunque estaba usando binarios precompilados y no estaba compilando nada. Aunque los diversos módulos pdo y mysqlnd.so y los archivos .ini se instalaron en mi contenedor (solo usando el estándar yum install php72
y todas las demás cosas especificadas en el asistente de instalación de PHP ), no estaban en los lugares predeterminados que PHP los estaba buscando. No tengo ni idea de porqué. Tal vez es una especie de estibador?
De todos modos, para resolver el problema, tuve que hacer eco de una extension_dir
directiva para mí PHP.ini
y TAMBIÉN configuré la PHP_INI_SCAN_DIR
variable env. Estos son los comandos relevantes de mi Dockerfile
ENV PHP_INI_SCAN_DIR=/etc/php.d/
RUN echo 'extension_dir = "/usr/lib64/php/modules"' >> /etc/opt/remi/php72/php.ini
Espero que esto no resulte en conflictos de módulos más adelante, como advierte @johanes.
EXTENSION_DIR=/usr/lib64/php/modules phpize
.