无法在 docker 容器内下载 php 模块

Can't download php modules inside the docker container

我无法在 docker 容器中下载任何 php 扩展,尝试时 yum install php7.3-mysql 它给我错误

"No package php7.3-zip available."

当尝试使用 docker-php-ext-install 时,它给了我

"bash: docker-php-ext-install: command not found"

docker 容器是从 centos 官方镜像创建的,只是拉它并安装 php7.3 成功但没有扩展

CentOS 7.6 需要先启用Epel-Repository 才能获取版本。

yum install epel-release

然后您可以安装 Remi-Repository 以获取最新的 PHP 版本。

yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum-config-manager --enable remi-php73

然后您可以安装最新的 PHP-版本:

yum install php

CentOS 通常有较旧的版本,您必须先安装它们。

按照以下步骤重播了您的问题:

docker run --rm -it centos:7 /bin/bash
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
yum install -y epel-release
yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum install -y php7.3-mysql

最后一次操作我得到:

Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                                                                                                                                                                                   
|  27 kB  00:00:00     
 * base: distrib-coffee.ipsl.jussieu.fr
 * epel: mirror.infonline.de
 * extras: mirror.plusserver.com
 * remi-safe: remi.mirrors.cu.be
 * updates: distrib-coffee.ipsl.jussieu.fr
epel                                                                                                                                                                                                                   
| 5.4 kB  00:00:00     
remi-safe                                                                                                                                                                                                              
| 3.0 kB  00:00:00     
(1/4): epel/x86_64/group_gz                                                                                                                                                                                            
|  90 kB  00:00:00     
(2/4): epel/x86_64/updateinfo                                                                                                                                                                                          
| 1.0 MB  00:00:00     
(3/4): epel/x86_64/primary_db                                                                                                                                                                                          
| 6.9 MB  00:00:06     
(4/4): remi-safe/primary_db                                                                                                                                                                                            
| 1.6 MB  00:00:06     
No package php7.3-mysql available.
Error: Nothing to do

您指定的包名称不存在,但它存在 php73-php-mysqlnd,看起来与您想要的非常接近。

yum search php73-php-mysqlnd
php73-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL

试试这个:

yum install -y php73-php-mysqlnd