【发布时间】:2019-01-26 17:11:53
【问题描述】:
我有一个简单的docker文件,如下:
FROM php:7.2-apache
COPY src/ /var/www/html/
通常要为 Mongo 或 MySQL 连接安装驱动程序,我会通过在 dockerfile 中添加以下内容来实现:
docker-php-ext-install mongo
在这种情况下,我想将我的 php 应用程序连接到 SQL Server 数据库,并且我了解为 php 7.x 执行此操作的最佳方法是使用 PDO 驱动程序,但是我不熟悉如何配置它在 dockerfile 中。
我尝试过安装 pecl,比如添加:
RUN pecl install sqlsrv pdo_sqlsrv
但是,这失败了,出现了一系列错误,似乎没有为我指明正确的方向。
我只是在寻找一种简单的方法来在 dockerfile 中或使用 docker run 完成此操作。
有关补充信息,这是我得到的错误:
/tmp/pear/temp/sqlsrv/shared/xplat.h:30:17: fatal error: sql.h: No such file or directory
#include <sql.h>
^
compilation terminated.
Makefile:194: recipe for target 'conn.lo' failed
make: *** [conn.lo] Error 1
ERROR: `make' failed
The command '/bin/sh -c pecl install sqlsrv pdo_sqlsrv && docker-php-ext-enable pdo_sqlsrv' returned a non-zero code: 1
谢谢大家
【问题讨论】:
-
你先做了
RUN docker-php-ext-install pdo吗? -
我试过了,是的,我得到了同样的错误,请参阅编辑过的主帖,我已经包含了错误。谢谢。
标签: php sql-server docker pdo