为PHP docker映像安装/配置SQL Server PDO驱动程序

时间:2018-08-20 14:29:44

标签: php sql-server docker pdo

我有一个简单的docker文件,如下所示:

xargs

通常要安装用于Mongo或MySQL连接的驱动程序,我可以通过将以下内容添加到dockerfile中来实现:

FROM php:7.2-apache
COPY src/ /var/www/html/

在这种情况下,我想将php应用程序连接到SQL Server数据库,并且我了解为php 7.x做到这一点的最佳方法是使用PDO驱动程序,但是我不熟悉如何配置它在dockerfile中。

我尝试执行pecl安装,例如添加:

docker-php-ext-install mongo

但是,这失败了,并且出现了一些错误,这些错误似乎并没有指向我正确的方向。

我只是在寻找一种简单的方法来通过dockerfile或使用docker run来完成此操作。

有关其他信息,这是我遇到的错误:

RUN pecl install sqlsrv pdo_sqlsrv

谢谢

1 个答案:

答案 0 :(得分:3)

您得到了答案吗?我按照以下步骤进行操作。 (unixodbc-dev软件包应该使您摆脱了pecl的安装。)

在Docker文件中:

RUN apt-get -y install unixodbc-dev
RUN pecl install sqlsrv pdo_sqlsrv

然后必须对php.ini添加一些更改以启用sqlserver。

获取php.ini的本地副本并添加以下行:

extension=pdo_sqlsrv.so
extension=sqlsrv.so

然后将您的本地php.ini复制到docker映像中(我的文件位于本地的“ config”文件夹中)。

在Docker文件中:

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