gpt4 book ai didi

php - MySQL 函数在 "php:7.1"docker 镜像中不可用

转载 作者:行者123 更新时间:2023-11-29 11:01:27 25 4
gpt4 key购买 nike

我正在使用“php:7.1”docker 镜像为新项目设置测试环境。我在尝试使用时遇到错误

$db = new mysqli(...);

获取数据库连接的函数。

我尝试在交互模式下使用 docker 镜像来手动查找必要的设置步骤:

docker run -i -t php:7.1 /bin/bash

我运行在网上找到的以下步骤来准备“mysqli”函数:

# update image
apt-get update
# install vim for local editing
apt-get install vim

我尝试从以下帖子安装mysql:How to enable MySQLi extension in php 7?

apt-get install php-mysql
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package php-mysql

我尝试仅激活扩展程序,但不起作用,因为扩展程序不存在:

extension=php_mysqli.dll

错误:

php info.php |grep mysql
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-non-zts-20160303/php_mysqli.so' - /usr/local/lib/php/extensions/no-debug-non-zts-20160303/php_mysqli.so: cannot open shared object file: No such file or directory in Unknown on line 0
Configure Command => './configure' '--with-config-file-path=/usr/local/etc/php' '--with-config-file-scan-dir=/usr/local/etc/php/conf.d' '--disable-cgi' '--enable-ftp' '--enable-mbstring' '--enable-mysqlnd' '--with-curl' '--with-libedit' '--with-openssl' '--with-zlib'
mysqlnd
mysqlnd => enabled
Version => mysqlnd 5.0.12-dev - 20150407 - $Id: b396954eeb2d1d9ed7902b8bae237b287f21ad9e $
Loaded plugins => mysqlnd,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password,auth_plugin_sha256_password
mysqlnd statistics =>

我不知道如何才能安装并启用该扩展。

最佳答案

那是因为你做错了。首先,旧的 MySQL 扩展在 PHP 7+ 中被弃用。它也不存在于基于 Debian 的发行版上。因此,您需要做的是创建一个包含以下内容的 Dockerfile:

FROM php:7.1
RUN docker-php-ext-install mysqli && \
docker-php-ext-install pdo_mysql

并运行命令,假设您位于 Dockerfile 所在的目录中:

docker build -t <some_tag> .
docker run -it <some_tag> bash

您将进入容器的提示符,然后可以运行 php -v 输出应类似于:

# php -m
[PHP Modules]
...
mysqli ===> MySQLi has been installed
mysqlnd ===> MySQLnd has been installed
...

关于php - MySQL 函数在 "php:7.1"docker 镜像中不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42158388/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com