Я пытаюсь запустить приложение CodeIgniter (PHP framework) в контейнере Docker и получаю следующую ошибку:
Message: PHP Startup: Unable to load dynamic library 'pgsql'
(tried: /usr/local/lib/php/extensions/no-debug-non-zts-20190902/pgsql
(/usr/local/lib/php/extensions/no-debug-non-zts-20190902/pgsql:
cannot open shared object file: No such file or directory),
/usr/local/lib/php/extensions/no-debug-non-zts-20190902/pgsql.so
(/usr/local/lib/php/extensions/no-debug-non-zts-20190902/pgsql.so:
cannot open shared object file: No such file or directory))
И поэтому вот это:
Message: Call to undefined function pg_pconnect()
Это мой Dockerfile:
FROM php:7.4.1-apache
RUN apt-get update && apt-get install -y libpq-dev
RUN docker-php-ext-configure pgsql -with-pgsql=/usr/local/lib/php/extension/pgsql
RUN docker-php-ext-install pdo pdo_pgsql
COPY . /var/www/html
COPY php.ini-production /usr/local/etc/php/php.ini
RUN service apache2 restart
EXPOSE 80
На php .ini у меня включено расширение вот так:
;extension=pdo_odbc
extension=pdo_pgsql
;extension=pdo_sqlite
extension=pgsql
;extension=shmop
И если я захожу в свой info . php site, я вижу, что расширения включены:
Я также вижу, что мой php .ini сохраняется правильно:
Я пробовал много предложений из разных сообщений, но вообще безуспешно.
Кто-нибудь знает, где проблема может быть?
Спасибо,