首页  >  问答  >  正文

在 docker 镜像中安装 timezonedb

<p>如何在 docker PHP 镜像中设置<code>extension=timezonedb.so</code>? 在 docker bash 手册中安装 timezonedb 并将 <code>extension=timezonedb.so</code> 添加到 php.ini 但对我不起作用。</p> <p>在 docker bash 手册中安装 timezonedb 并将 <code>extension=timezonedb.so</code> 添加到 php.ini 但对我不起作用。</p>
P粉158473780P粉158473780438 天前407

全部回复(1)我来回复

  • P粉696146205

    P粉6961462052023-09-01 09:01:12

    https://serverfault.com/questions/1123233 /为什么-timezonedb-extension-have-the-latest-data

    方法一。

    RUN docker-php-source extract \
        && pecl bundle -d /usr/src/php/ext timezonedb \
        && docker-php-ext-configure timezonedb \
        && docker-php-ext-install -j$(nproc) timezonedb \
        && docker-php-source delete

    方法2。

    RUN mkdir -p /usr/local/src/pecl \
        && pecl bundle -d /usr/local/src/pecl timezonedb \
        && docker-php-ext-configure /usr/local/src/pecl/timezonedb \
        && docker-php-ext-install -j$(nproc) /usr/local/src/pecl/timezonedb \
        && rm -rf /usr/local/src/pecl

    方法3。

    RUN apt-get -y install gcc make autoconf libc-dev pkg-config \
        && pecl install timezonedb \
        && bash -c "echo extension=timezonedb.so > /usr/local/etc/php/conf.d/docker-php-ext-timezonedb.ini"

    这3种方法都可以正常工作。构建docker容器后,我通过检查PHP信息确认扩展已安装并正确加载。

    回复
    0
  • 取消回复