Dockerfile试图“apk添加composer php”失败?

我试图学习Docker,并遇到了一个障碍。 我的docker文件如下

# Base image of a nginx box FROM richarvey/nginx-php-fpm:latest ARG VERSION=0.0.0 ENV APP=jewel ENV WEBROOT=/var/www/html/JEWEL_WEB_ROOT/ WORKDIR /var/www/html COPY ./ ./ # Install composer libs RUN echo "ipv6" >> /etc/modules #RUN ["apk","update"] RUN ["apk","add","composer", "--no-cache"] RUN ["composer","install"] ENV PORT=80 EXPOSE 80 

当构build过程到达apk添加时,我得到以下内容:

 Step 8/11 : RUN apk add composer --no-cache ---> Running in ffa506b1a07f fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/community/x86_64/APKINDEX.tar.gz fetch http://nl.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz ERROR: unsatisfiable constraints: composer-1.5.2-r0: masked in: @testing satisfies: world[composer] ERROR: Service 'web' failed to build: The command 'apk add composer --no-cache' returned a non-zero code: 1 

我已经检查了软件包列表(位于pkgs.alpinelinux.org),并且有一个似乎符合标准的软件包,它似乎正在查找?

在这里输入图像说明

我很困惑为什么它似乎find包,但不会为我安装它。

composer php-1.5.2-r0:屏蔽在:@testing

看起来,作者(可怕过时!)Dockerfile固定testing存储库,所以你必须附加@testing包名称:

 apk add composer@testing 

不过,我不希望它的工作,因为不同的PHP版本(V3.4是非常旧的版本)。

Interesting Posts