首页 > 解决方案 > postgresql 客户端 - 在 php:5-apache 上安装

问题描述

我在一些旧项目(Laravel 4.2、php5.6、postgresql)上工作,我想在 docker 上设置它 - 这是我的dockerfile

FROM php:5-apache

COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

RUN apt-get update

RUN apt-get install -y \
    git \
    nano \
    libpng-dev \
    libmcrypt-dev \ 
    postgresql-dev \  
    zlib1g-dev \
    zip \
    unzip &&\
    a2enmod rewrite

RUN docker-php-ext-install pdo &&\
    docker-php-ext-install pdo_mysql &&\
    docker-php-ext-install pdo_pgsql &&\
    docker-php-ext-install zip &&\
    docker-php-ext-install gd &&\
    docker-php-ext-install pcntl &&\ 
    docker-php-ext-install mcrypt

# COPY php.ini /usr/local/etc/php/php.ini

我收到以下错误:

E: 找不到包 postgresql-dev

当我更改postgresql-devpostgresql(并将图像更改为FROM php:5-apache-jessie不同的组合时:RUN dpkg --configure -a && RUN apt-get -f install && apt-get update && apt-get upgrade -y && apt-get --purge remove postgresql\*我收到如下错误:

E:子进程/usr/bin/dpkg返回错误码(1)

E: 找不到包 postgresql*

E: 通过 glob 'postgresql*' 找不到任何包

E: 通过正则表达式 'postgresql*' 找不到任何包

您需要安装 postgresql-server-dev-XY 来构建服务器端扩展或 libpq-dev 来构建客户端应用程序。

您需要安装 postgresql-server-dev-XY 来构建服务器端扩展或 libpq-dev 来构建客户端应用程序。

配置:错误:找不到 libpq-fe.h。请指定正确的 PostgreSQL 安装路径

问题:如何正确安装 postgres php 客户端驱动程序?

标签: postgresqldockerphp-5.6

解决方案


dockerfile更改postgresql-dev \

libpq-dev \

推荐阅读