Драйвер PHP docker pdo_mysql не найденPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Драйвер PHP docker pdo_mysql не найден

Сообщение Anonymous »

Я пытаюсь создать среду разработки с помощью докера php7.1. И что бы я ни делал, почему-то пишет: "В драйвере произошло исключение: не удалось найти драйвер
".

Я просмотрел множество сообщений, но не нашел ответа, который решил бы мою проблему.

Я используя следующий файл dockerfile и docker-compose.yml:

Код: Выделить всё

FROM php:7.1-apache
COPY dockerConfig/php.ini /usr/local/etc/php/
RUN apt-get update \
&& apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libpng12-dev \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install gd

# Install MCrypt
RUN apt-get update \
&& apt-get install -y libmcrypt-dev \
&& docker-php-ext-install mcrypt

# Install Intl
RUN apt-get update \
&& apt-get install -y libicu-dev \
&& docker-php-ext-install intl

# Install Mysql
RUN docker-php-ext-install pdo pdo_mysql

# Install opcache
RUN docker-php-ext-install opcache

# Configure Apache Document Root
ENV APACHE_DOC_ROOT /var/www/html

# Enable Apache mod_rewrite
RUN a2enmod rewrite

COPY dockerConfig/mysite.local.conf /etc/apache2/sites-available/mysite.local.conf
RUN a2ensite mysite.local.conf
RUN a2dissite 000-default.conf

COPY / /var/www/html

RUN service apache2 restart

version: '3'
services:
mysite-web:
networks:
mysite:
ipv4_address: 178.17.10.3
build:
context: .
dockerfile: Dockerfile
volumes:
- $PWD:/var/www/html

container_name: mysite-dev-running

networks:
mysite:
driver: bridge
ipam:
config:
- subnet: 178.17.10.0/24
Шаги сборки:
  • образ docker rm (удалить все изображения вручную)< /li>
    docker rm xxxxx (удалить все контейнеры вручную)
  • docker-compose build --no-cache
  • docker-compose up -d
Перейдите на страницу веб-сайта Symfony, и я получаю сообщение, что драйвер не найден. Сбросьте информацию о PHP, и я получу
Изображение


Изображение


Затем я создал скрипт для вызов с URL-адреса, который exec "php -m" и var_dumps результат, который дает мне

Код: Выделить всё

array(42) { [0]=> string(13) "[PHP Modules]" [1]=> string(4) "Core" [2]=> string(5) "ctype" [3]=> string(4) "curl" [4]=> string(4) "date" [5]=> string(3) "dom" [6]=> string(8) "fileinfo" [7]=> string(6) "filter" [8]=> string(3) "ftp" [9]=> string(2) "gd" [10]=> string(4) "hash" [11]=> string(5) "iconv" [12]=> string(4) "intl" [13]=> string(4) "json" [14]=> string(6) "libxml" [15]=> string(8) "mbstring" [16]=> string(6) "mcrypt" [17]=> string(7) "mysqlnd" [18]=> string(7) "openssl" [19]=> string(4) "pcre" [20]=> string(3) "PDO" [21]=> string(9) "pdo_mysql" [22]=> string(10) "pdo_sqlite" [23]=> string(4) "Phar" [24]=> string(5) "posix" [25]=> string(8) "readline" [26]=> string(10) "Reflection" [27]=> string(7) "session" [28]=> string(9) "SimpleXML" [29]=> string(3) "SPL" [30]=> string(7) "sqlite3" [31]=> string(8) "standard" [32]=> string(9) "tokenizer" [33]=> string(3) "xml" [34]=> string(9) "xmlreader" [35]=> string(9) "xmlwriter" [36]=> string(12) "Zend OPcache" [37]=> string(4) "zlib" [38]=> string(0) "" [39]=> string(14) "[Zend Modules]" [40]=> string(12) "Zend OPcache" [41]=> string(0) "" }
Итак, pdo_mysql, кажется, установлен с точки зрения Apache, но почему-то не включен.

Что странно, так это что у меня есть еще один проект, который использует Symfony и почти идентичную конфигурацию докера, и он работает.

Есть идеи?

Спасибо!

ОБНОВЛЕНИЕ

Оказывается, часть устаревшего кода я содержал файл php.ini, который Apache использовал вместо правильного в /usr/local/etc/php, и этот файл не содержал необходимой конфигурации с pdo_mysql.

Подробнее здесь: https://stackoverflow.com/questions/495 ... -not-found
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»