Mysql расширение не загружено - PullRequest
0 голосов
/ 05 августа 2020

У меня проблема с моим Docker Compose. Я установил локальную разработку для старого проекта, в котором используются symfony 1.4, PHP 5.5 и Mysql 5.7.30

Все идет нормально, пока я не запустил приложение в браузере. Ничего не появляется, и я проверяю файл журнала. Он сказал:

[error] 6#6: *5 FastCGI sent in stderr: "PHP message:  [wrapped: mysql extension not loaded [User Info: Array]]" while reading upstream, client: 118.70.126.249, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://172.22.0.3:9000"

Я также включил расширение в файле php.ini, но оно не сработало.

;extension=php_mysql.dll
;extension=php_mysqli.dll

;extension=pdo_mysql
;extension=php_pdo_mysql.dll

;extension=pdo_mysql.so

Это мой скриншот для проверки phpinfo() введите описание изображения здесь

Это мой docker-compose.yml

version: '3'

services:

  nginx:
    image: nginx:1.11.4
    container_name: nginx
    ports:
      - 8091:80
    volumes:
      - ./app:/var/www/html
      - ./nginx/conf.d/:/etc/nginx/conf.d/
      - ./nginx/log/:/var/log/nginx/
    depends_on:
      - php
      - mysql

  php:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: php
    ports:
      - 9000:9000
    working_dir: /var/www/html
    volumes:
      - ./app:/var/www/html
      - ./php/php.ini:/usr/local/etc/php/php.ini
    depends_on:
      - mysql

  mysql:
    image: mysql:5.7.30
    container_name: mysql
    ports:
      - 3307:3306
    environment:
      - MYSQL_ROOT_PASSWORD=secret
      - MYSQL_USER=admin
      - MYSQL_DATABASE=symfony_db
      - MYSQL_PASSWORD=secret

А это Dockerfile

FROM php:5.5-fpm

WORKDIR /var/www/html

RUN apt-get update && apt-get install -y \
    libpng-dev \
    libjpeg62-turbo-dev \
    libfreetype6-dev \
    zip \
    jpegoptim optipng pngquant gifsicle \
    vim \
    unzip \
    git \
    curl

RUN docker-php-ext-install pdo_mysql mbstring zip exif pcntl
RUN docker-php-ext-configure gd --with-gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ --with-png-dir=/usr/include/
RUN docker-php-ext-install gd

# Install composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

# Add user for laravel application
RUN groupadd -g 1000 www
RUN useradd -u 1000 -ms /bin/bash -g www www

# Copy existing application directory permissions
COPY --chown=www:www . /var/www

# Change current user to www
USER www

EXPOSE 9000

CMD ["php-fpm"]

Любая помощь приветствуется! Спасибо, ребята!

...