Dockerfile试图'apk添加作曲家'失败?
问题描述:
我试图学习Docker,并遇到了一个障碍。我的搬运工文件如下Dockerfile试图'apk添加作曲家'失败?
# 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
当构建过程获取到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) ,并且有一个似乎符合标准的软件包,它似乎在寻找?
我很困惑,为什么它似乎找到了包,但不会安装它适合我。
答
作曲家-1.5.2-R0: 掩盖了:@testing
看来那是作者Dockerfile固定测试库,所以你必须要追加@testing
到(可怕的过时!)包名称:
apk add [email protected]
不过,我不希望它因为工作不同的PHP版本(V3.4是很老的版本)。
ahhh好的,谢谢! :) –