我在一些旧项目(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-dev
更改为postgresql
(并将图像更改为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:用regex'postgresql *'找不到任何包
您需要安装postgresql-server-dev-X.Y来构建服务器端扩展,或者安装libpq-dev来构建客户端应用程序。
您需要安装postgresql-server-dev-X.Y来构建服务器端扩展,或者安装libpq-dev来构建客户端应用程序。
configure:error:找不到libpq-fe.h。请指定正确的PostgreSQL安装路径
问题:如何正确安装postgres php客户端驱动程序?
在dockerfile
改变postgresql-dev \
到
libpq-dev \