我已经使用 docker-compose 命令安装了 PHP:latest
Docker 容器。它在我的 Docker 中安装了 php-7.1.6-fpm
。当我尝试安装 php7-pgsql
扩展时,它找不到那个包,而是找到了 pdo
和 pdo_pgsql
包。那不能满足我的需要。当我在已安装的 PHP 容器中搜索可用包时,我找不到任何与 php7
相关的 pgsql 包,相反,我看到了 php5-pgsql
包,它不会使用 php7-fpm。
最后,我在删除旧的目标以使用 php5-pgsql
包后安装了 php-5.6-fpm 容器。但是现在又失望了,在新安装的容器中找不到php5-pgsql
包。
我知道我会遗漏一些要点。 Alpine Linux 是否没有php-pgsql
扩展。将此扩展包含在我的 PHP 容器中的可能方法有哪些。我还在我的 docker-compose.yml 中包含了 Nginx 和 Postgres
我只有 3 天的 Docker 理论知识和第一天的实践经验。
感谢阅读。
最佳答案
我在设置新项目以使用 pgsql 时遇到了同样的问题。
我使用的是 php7,所以你应该也能使用它。在您的 Dockerfile 上,确保您涵盖了以下步骤。
确保安装了依赖项:
RUN apt-get update && apt-get install -y libpq-dev
配置扩展:
RUN docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql
安装扩展:
RUN docker-php-ext-install pdo pdo_pgsql
关于php - 在 php7-fpm Docker 容器中安装 Postgres 驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44983961/