Docker Debian拉伸映像中缺少php-redis存储库

时间:2018-10-05 19:45:41

标签: php docker redis debian-stretch

我缺少包含php-redis软件包的存储库。在我的debian 9 / stretch docker容器中,运行以下命令:

root@dcc82d674095 [19:36:46] [/var/www/html]
-> # apt-get install php-redis
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package php-redis is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'php-redis' has no installation candidate

但是如果我运行apt search php-redis,我会看到它是“那里”:

root@dcc82d674095 [19:41:18] [/var/www/html]
-> # apt search php-redis
Sorting... Done
Full Text Search... Done
php-redis/stable,stable 3.1.1-1 amd64
  (none)

我的/etc/apt/sources.list如下:

deb http://deb.debian.org/debian stretch main
deb http://security.debian.org/debian-security stretch/updates main
deb http://deb.debian.org/debian stretch-updates main

我的猜测是,我在该sources.list文件中缺少资源。我缺少什么回购?我还想知道如何找到来源,因此再次发生类似情况时,我可以弄清楚,而不用问另一个问题。

我查看了此页面-但无法找出看起来应该将其添加到我的sources.list文件中的任何链接。 (这只是我对问题的假设)。

https://packages.debian.org/source/stretch/php-redis


编辑:

尽管我仍然想找到问题的答案,但通过pecl安装软件包找到了解决方法。在我的docker文件中,添加了以下内容:

# printf statement mocks answering the prompts from the pecl install
RUN printf "\n \n" | pecl install redis && docker-php-ext-enable redis

1 个答案:

答案 0 :(得分:0)

如果您使用php:7.1-fpm-stretch容器,则会阻止所有php-***软件包的安装,请参见此处的详细信息:https://github.com/docker-library/php/issues/713