Mau*_*uro 1 memcached libmemcached docker dockerfile docker-compose
我有一个使用Docker的应用程序,并且正在尝试使用php7-fpm安装memcached。
根据官方的 docker 文档,我在Dockerfile中有:
# PHP Version
FROM php:7.0-fpm
...
# Install Memcached
RUN apt-get install -y libmemcached-dev && \
pecl install memcached && \
docker-php-ext-enable memcached
Run Code Online (Sandbox Code Playgroud)
但是我得到了这个错误:
pecl/memcached requires PHP (version >= 5.2.0, version <= 6.0.0, excluded versions: 6.0.0), installed version is 7.0.9
Run Code Online (Sandbox Code Playgroud)
我不想切换到PHP 5.6。有任何想法吗?
我们在构建php7容器时从头开始构建memcache扩展。也许我们的方法可以帮助您或为您指明正确的方向。Dockerhub中的文档确实似乎是有问题的,尝试使用pecl,它在这里也不起作用。
这就是我们的Dockerfile中的样子:
RUN apt-get update && apt-get install -y
libmemcached11 \
libmemcachedutil2 \
libmemcached-dev \
libz-dev \
git \
&& cd /root \
&& git clone -b php7 https://github.com/php-memcached-dev/php-memcached \
&& cd php-memcached \
&& phpize \
&& ./configure \
&& make \
&& make install \
&& cd .. \
&& rm -rf php-memcached \
&& echo extension=memcached.so >> /usr/local/etc/php/conf.d/memcached.ini \
&& apt-get remove -y build-essential libmemcached-dev libz-dev \
&& apt-get remove -y libmemcached-dev libz-dev \
&& apt-get autoremove -y \
&& rm -rf /var/lib/apt/lists/* \
&& apt-get clean
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4916 次 |
| 最近记录: |