@WenSiL

Как добавить драйвер для PostgreSQL в docker контейнер php-fpm?

Есть такой Dockerfile:
FROM php:fpm

RUN apt-get update && apt-get install -y \
        curl \
        wget \
        git \
        libfreetype6-dev \
        libjpeg62-turbo-dev \
        libmcrypt-dev \
        libpng-dev \
    && pecl install mcrypt-1.0.1 \
    && docker-php-ext-enable mcrypt \
    && docker-php-ext-install -j$(nproc) iconv mbstring mysqli pdo_mysql zip \
    && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
    && docker-php-ext-install -j$(nproc) gd

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

    ADD ./php.ini /usr/local/etc/php/conf.d/40-custom.ini

    WORKDIR /var/www

    CMD ["php-fpm"]

Подскажите, что нужно изменить в докерфайле, чтобы заставить php работать с postgres? Совершенно не понимаю, как работать с расширения для php в докере. Пробовал просто менять mysqli на pgsql и pdo_mysql на pdo_pgsql, но не помогло. И как вообще осуществлять подключение из php к БД, которая тоже находится в контейнере? Как обычно, через локалхост? Или есть какие то особенности? И последний вопрос. Я прочитал, что mcrypt объявлен устаревшим, как в докерфайле заменить его на что то актуальное?
  • Вопрос задан
  • 7803 просмотра
Пригласить эксперта
Ответы на вопрос 1
ivankomolin
@ivankomolin
RUN apt-get update && \
    apt-get install -y libpq-dev && \
    docker-php-ext-install pdo pdo_pgsql pgsql
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы