Невозможно установить расширения mysqli или pdo_mysql в контейнере Docker PHP 7.4.33.Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Невозможно установить расширения mysqli или pdo_mysql в контейнере Docker PHP 7.4.33.

Сообщение Anonymous »

Я пытаюсь настроить среду на основе Docker для своего приложения PHP 7.4.33, но не могу установить расширения mysqli и pdo_mysql. Несмотря на то, что вы выполнили несколько руководств и несколько раз пересобирали образ, расширения не устанавливаются.
Вот моя настройка:
Dockerfile

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

FROM php:7.4.33-apache

# Install necessary extensions
RUN apt-get update && apt-get install -y \
libmariadb-dev \
&& docker-php-ext-install mysqli pdo pdo_mysql

WORKDIR /var/www/html

docker-compose.yml

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

version: '3.8'

services:
apache-php:
build:
context: /home/jasogu/docker/lamp-stack
dockerfile: Dockerfile
container_name: apache-php
ports:
- "8080:80"
volumes:
- ./www:/var/www/html
- ./php-config:/usr/local/etc/php
networks:
- lamp-network
depends_on:
- mysql

mysql:
image: mysql:8.0
container_name: mysql
environment:
MYSQL_ROOT_PASSWORD: "password"
MYSQL_DATABASE: "database"
MYSQL_USER: "user"
MYSQL_PASSWORD: "password"
volumes:
- ./mysql-data:/var/lib/mysql
networks:
- lamp-network

phpmyadmin:
image: phpmyadmin:latest
container_name: phpmyadmin
environment:
PMA_HOST: mysql
PMA_USER: "user"
PMA_PASSWORD: "password"
ports:
- "8081:80"
networks:
- lamp-network
depends_on:
- mysql

volumes:
mysql-data:

networks:
lamp-network:

Шаги, которые я выполнил
  • Запустил docker-compose down --volumes, чтобы остановить и удалить контейнеры.
  • Использовал docker-compose up -d --build, чтобы перестроить образ с помощью файла Dockerfile.
  • Доступ к контейнеру осуществлялся с помощью docker exec – это apache-php bash и проверил наличие расширений с помощью php -m.
Что я вижу:
Когда я запускаю php -m | grep mysqli или php -m | grep pdo_mysql, вывод отсутствует, что означает, что расширения не установлены.
Что я пробовал:
  • Переписать файл Dockerfile, чтобы убедиться, что зависимости установлены правильно.
  • Добавление phpinfo() для проверки конфигурации PHP (в выходных данных нет mysqli или pdo_mysql).
  • Очистка старых изображений с помощью образа Docker обрезать -f и пересобрать все с нуля.
Журналы ошибок:
При проверке журналов я не Я не вижу каких-либо явных ошибок об отсутствующих расширениях или неудачных установках.
Вопрос
Как я могу успешно установить расширения mysqli и pdo_mysql в моем PHP 7.4. 33 контейнер? Что-то не так с моим Dockerfile или docker-compose.yml? Любая помощь будет принята с благодарностью!

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

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

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

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

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

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