簡體   English   中英

Redis Wordpress PHP Docker 容器中的 igbinary

[英]Redis with igbinary in Wordpress PHP Docker container

我想允許我的 wordpress 實例使用 igbinary 序列化程序通過 Redis 訪問數據庫內容。 我正在使用 Till Krüss 的 Worpdress 緩存插件 Redis。 根據我的理解,容器應該采用以下方式:

如何在 wordpress iamge 中正確包含 Redis 和 igbinary 支持? 我嘗試了以下內容:

FROM wordpress:php7.4-fpm-alpine
RUN set -xe \
&& apk update \
&& apk upgrade \
&& apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS \
&& pecl install -o -f igbinary \
&& cd /usr/src/ \
&& pecl bundle redis \
&& docker-php-ext-configure /usr/src/redis --enable-redis-igbinary \
&& docker-php-ext-install -j$(nproc) /usr/src/redis \
&& docker-php-ext-enable redis \
&& docker-php-ext-enable igbinary \
&& apk del .phpize-deps

我讀到,pecl 已經過時,不應再使用(而是使用 pickle 或 composer,但它們似乎不提供正確的包)

所以問題是:Dockerfile 必須看起來如何才能允許使用現代標准將 redis 與 igbinary 序列化器一起使用?

我希望你們能幫助我:)

使用以下內容:

FROM wordpress:php7.4-fpm-alpine
RUN set -xe \
&& apk update \
&& apk upgrade \
&& apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS \
# && curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
&& wget https://github.com/FriendsOfPHP/pickle/releases/latest/download/pickle.phar \
&& chmod +x pickle.phar \
&& mv pickle.phar /usr/local/bin/pickle \
&& pickle install -n igbinary \
&& docker-php-ext-enable igbinary \
&& echo "--enable-redis-igbinary" > cfg-options.txt \
&& pickle install --with-configure-options cfg-options.txt redis \
&& docker-php-ext-enable redis \
&& apk del .phpize-deps \
&& rm -rf cfg-options.txt \
&& php -m | grep igbinary \
&& php -m | grep redis \
&& php -i | grep igbinary \
&& php -i | grep redis \
#&& CLI_VERSION=$(wp cli info | grep "WP-CLI version" | cut -d$'\t' -f2) \
#&& if [ "${CLI_VERSION}" = "2.4.0" ]; then wp cli update --nightly --yes; fi

它在使用 pickel 並遵守在 redis 擴展之前啟用 igbinary 擴展的順序時有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM