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

时间:2017-12-30 10:30:53

标签: php docker mysqli docker-compose dockerfile

我正在使用[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/

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

2 个答案:

答案 0 :(得分:1)

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

docker-php-ext-install mysqli

@edit 有些扩展需要额外的包(例如iconv),无论如何mysqli都没有。

答案 1 :(得分:0)

试试这个

apt-get install php-mysql

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

/etc/php/7.0/apache2/php.ini

在行下方取消评论

延长= php_mysqli.so