Docker 无法在alpine上安装软件包,尽管我可以在ui中看到它
上周,我在阿尔卑斯山上顺利运行了php7,直到今天,我重建了自己的形象,但现在一切都不起作用。我得到了错误:Docker 无法在alpine上安装软件包,尽管我可以在ui中看到它,docker,php-7,alpine,alpine-package-keeper,Docker,Php 7,Alpine,Alpine Package Keeper,上周,我在阿尔卑斯山上顺利运行了php7,直到今天,我重建了自己的形象,但现在一切都不起作用。我得到了错误: / # apk add php7 ERROR: unsatisfiable constraints: php7 (missing): required by: world[php7] 对于每个软件包,我都在尝试安装扩展,而且以前已经成功了。下面是我用来设置php7的RUN命令: RUN echo "http://dl-cdn.alpinelinux.org/alpine/e
/ # apk add php7
ERROR: unsatisfiable constraints:
php7 (missing):
required by: world[php7]
对于每个软件包,我都在尝试安装扩展,而且以前已经成功了。下面是我用来设置php7的RUN命令:
RUN echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \
apk update && \
apk upgrade && \
apk add --update \
php7-mcrypt \
php7-soap \
php7-openssl \
php7-gmp \
php7-pdo_odbc \
php7-json \
php7-dom \
php7-pdo \
php7-zip \
php7-mysqli \
php7-sqlite3 \
php7-pdo_pgsql \
php7-bcmath \
php7-gd \
php7-odbc \
php7-pdo_mysql \
php7-pdo_sqlite \
php7-gettext \
php7-xmlreader \
php7-xmlrpc \
php7-bz2 \
php7-iconv \
php7-pdo_dblib \
php7-curl \
php7-ctype \
php7-fpm
上周,上述所有扩展都已完美安装。我错过了什么
证明软件包确实存在:您应该使用DockerHub上的官方软件包 然后,根据图像文档,在docker文件中使用docker php ext install命令:
FROM php:7-fpm-alpine
RUN apk update \
&& apk add libmcrypt-dev \
&& docker-php-ext-install mcrypt mysqli pdo_mysql \
&& rm /var/cache/apk/*
这最初看起来可能有点奇怪,但它是有效的,并且是官方支持的Docker方法
我们提供帮助脚本docker php ext configure,
docker php ext安装和docker php ext使
安装PHP扩展
包php7已从测试转移到社区存储库,因此您必须替换http://dl-cdn.alpinelinux.org/alpine/edge/testing 具有http://dl-cdn.alpinelinux.org/alpine/edge/community.从Alpine:3.3开始,您现在可以跳过udpate和清理。您执行apk-无缓存添加。。。。效率更高。谢谢你,丹。这看起来确实很奇怪,但真正让我抓狂的是,这本书在周五几乎可以用了,昨天就完全坏了。谢谢!!我有一种感觉,他们被转移到了某个地方,但我在我签出的任何回购协议中都找不到他们。如果有这样的变化,有没有办法得到通知?这让我的开发时间倒退了一点。谢谢。是否有关于阿尔卑斯回购协议的文件?