docker无法找到试图安装php扩展mysqli的包

问题描述 投票:1回答:2

我正在使用[typo3-docker-boilerplate] [1]

https://github.com/webdevops/TYPO3-docker-boilerplate

并尝试安装我需要的扩展(mysqli)

我尝试过在这里和互联网上找到的不同方法,但我总是遇到这个错误信息:

E:无法找到包mysqli

我将其添加到dockerfile中:

RUN apt-get update && apt-get install -y \
    mysqli \
    && docker-php-ext-install mysqli

RUN ln -sf /opt/docker/etc/cron/crontab /etc/cron.d/docker-boilerplate \
    && chmod 0644 /opt/docker/etc/cron/crontab \
    && echo >> /opt/docker/etc/cron/crontab \
    && ln -sf /opt/docker/etc/php/development.ini /opt/docker/etc/php/php.ini

我虽然尝试了,但这里写的关于安装php扩展的内容当然没有成功:

https://hub.docker.com/_/php/

有一个将包含的development.ini,其中包含php指令,如:

post_max_size       = 50M
upload_max_filesize = 50M
max_input_vars      = 5001

我虽然试图把这个写到文件中

extension = php_mysqli.dll

dockerfile

FROM webdevops/php-apache-dev:ubuntu-16.04

ENV PROVISION_CONTEXT "development"

# Deploy scripts/configurations
COPY etc/             /opt/docker/etc/

RUN ln -sf /opt/docker/etc/cron/crontab /etc/cron.d/docker-boilerplate \
    && chmod 0644 /opt/docker/etc/cron/crontab \
    && echo >> /opt/docker/etc/cron/crontab \
    && ln -sf /opt/docker/etc/php/development.ini /opt/docker/etc/php/php.ini

RUN apt-get install -y \
    && docker-php-ext-install php-mysqli

#RUN apt-get update && \
#    apt-get install -y mysqli && \
#    docker-php-ext-install mysqli && \
#    docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/  &&  \
#    docker-php-ext-install gd

#RUN apt-get -qq update \
#    && apt-get -qq -y install curl \
#        php-mysqli \
#    && apt-get clean -y \
#    && docker-php-ext-install php-mysqli

# Configure volume/workdir
WORKDIR /app/

感谢任何帮助或建议。谢谢

php docker mysqli docker-compose dockerfile
2个回答
1
投票

mysqliphp-src的一部分。如果您使用PHP docker镜像,php-src中包含的任何扩展都不需要任何其他包。你只需要使用

docker-php-ext-install mysqli

@edit有些扩展需要额外的包(例如iconv),反正mysqli没有。


0
投票

试试这个

apt-get install php-mysql

完成后,在下面的文件中启用mysql扩展

/etc/PHP/7.0/Apache2/PHP.INI

一行评论如下

延长= php_mysqli.so

© www.soinside.com 2019 - 2024. All rights reserved.