0
我有一個PostgreSQL數據庫的API平臺的項目,我無法找到如何實現與碼頭工人PDO pgsql的司機..如何在docker php:7.1-apache上安裝pgsql驅動程序?
這裏是我的搬運工文件:
FROM php:7.1-apache
# PHP extensions
ENV APCU_VERSION 5.1.7
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
libicu-dev \
zlib1g-dev \
libpq-dev \
libzip-dev \
libpcre3-dev \
ssmtp vim git cron zip \
&& docker-php-ext-install \
pdo \
pdo_pgsql \
zip
# Apache config
RUN a2enmod rewrite
ADD docker/apache/vhost.conf /etc/apache2/sites-available/000-default.conf
# Add the application
ADD . /app
WORKDIR /app
# Install composer
RUN ./docker/composer.sh \
&& mv composer.phar /usr/bin/composer \
&& composer global require "hirak/prestissimo:^0.3"
RUN usermod -u 1000 www-data
#RUN chown -R www-data:www-data /app/var/cache /app/var/logs /app/var/sessions
CMD ["/app/docker/start.sh"]
,在這裏我docker- composer.yml文件
web:
container_name: web-api-front
build: .
environment:
SYMFONY_ENV: dev
volumes:
- .:/app
ports:
- 8084:80
psql:
container_name: psql-api-front
image: postgres
environment:
POSTGRES_PASSWORD: ''
POSTGRES_USER: dbuser
POSTGRES_DB: dbname
ports:
- "5433:5432"
volumes:
- ./docker/sql:/var/sql
我tryed很多網站,但我仍然無法找到一種方法,使pgsql的..
當我
var_dump(PDO::getAvailableDrivers());
我只有
array(2) { [0]=> string(6) "sqlite" [1]=> string(5) "mysql" }
而且,當我運行
docker-compose up
我有這個在我的日誌,我不知道什麼意思
psql-api-front | LOG: database system was shut down at 2017-08-01 08:18:57 UTC
psql-api-front | LOG: MultiXact member wraparound protections are now enabled
psql-api-front | LOG: database system is ready to accept connections
psql-api-front | LOG: autovacuum launcher started
我做錯了什麼?
嗨Amrouche! 非常感謝你的時間。 但即使使用此配置,API平臺仍然無法找到pgsql驅動程序:/ .. –
它找不到驅動程序或它可以找到數據庫? 您可以嘗試在碼頭集裝箱中執行以下操作嗎? ('docker-compose exec web-api-front')和'ping psql-api-front' –
我解決了我的問題,我錯過了那些庫'postgresql-client&libpq-dev'再次感謝您的時間伴侶:) –