Как поставить php-pgsql клиент на php:7.1-cli контейнер?

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Ответить
EVOSandru6
Сообщения: 603
Зарегистрирован: 2014.07.04, 13:33

Как поставить php-pgsql клиент на php:7.1-cli контейнер?

Сообщение EVOSandru6 » 2018.09.26, 09:01

Добрый день,

Сам postgres контейнер точно рабочий, конектился, манипулировал данными через Database manager. Проблема именно в том, чтобы подружить его с php{''|7.1}

Фрагмент docker-compose.yml

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

php-cli:
    build: ${CONTAINERS_PATH}/php-cli
    volumes:
      - ${APP_PATH_HOST}:/var/www
    environment:
      - DB_CONNECTION=pgsql
      - DB_PORT=5432
      - DB_HOST=pgsql
    tty: true
pgsql:
    image: postgres:latest
    environment:
      - POSTGRES_USER=${DB_USER}
      - POSTGRES_PASSWORD=${DB_PASSWORD}
      - POSTGRES_DATABASE=${DB_NAME}
    ports:
      - 54321:5432
    volumes:
      - ./storage/docker/postgres/:/docker-entrypoint-initdb.d/

Есть такой Dockerfile:

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

FROM php:7.1-cli
RUN apt-get update && apt-get install -y libmcrypt-dev php-pgsql; ## или php7.1-pgsql, тот же результат
RUN docker-php-ext-install mcrypt pcntl pdo pdo_pgsql;
WORKDIR /var/www
При

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

docker-compose-up
:

E: Package 'php-pgsql' has no installation candidate
ERROR: Service 'php-cli' failed to build: The command '/bin/sh -c apt-get update && apt-get install -y libmcrypt-dev php-pgsql; ## php7.1-pgsql' returned a non-zero code: 100


Если меняю Dockerfile на: (убираю php-pgsql)

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

FROM php:7.1-cli
RUN apt-get update && apt-get install -y libmcrypt-dev; 
RUN docker-php-ext-install mcrypt pcntl pdo pdo_pgsql;
WORKDIR /var/www

Ловлю:

checking for pg_config... not found
configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
ERROR: Service 'php-cli' failed to build: The command '/bin/sh -c docker-php-ext-install mcrypt pcntl pdo pdo_mysql pdo_pgsql;' returned a non-zero code: 1



Подскажите пожалуйста - если кто нибудь сталкивался.

Аватара пользователя
nizsheanez
Сообщения: 814
Зарегистрирован: 2011.04.29, 13:09
Откуда: Москва

Re: Как поставить php-pgsql клиент на php:7.1-cli контейнер?

Сообщение nizsheanez » 2018.11.17, 06:27

Погугли "docker-php-ext-install postgres"



Ответить