Docker Alpine linux包被屏蔽了

时间:2016-10-25 18:02:32

标签: linux docker alpine

我正在尝试在运行高山的docker镜像上安装一个软件包,但是我收到以下错误,

Removing intermediate container 54bbe0932899
Step 14 : RUN apk add openblas openblas-dev --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted
 ---> Running in 24d7a8c00c89
fetch http://dl-3.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
  openblas-0.2.19-r0:
    masked in: @community
    satisfies: world[openblas]
               openblas-dev-0.2.19-r0[openblas=0.2.19-r0]
  openblas-ilp64-0.2.19-r0:
    masked in: @community
    satisfies:
               openblas-dev-0.2.19-r0[openblas-ilp64=0.2.19-r0]
  openblas-dev-0.2.19-r0:
    masked in: @community
    satisfies: world[openblas-dev]
ERROR: Service 'web' failed to build: The command '/bin/sh -c apk add openblas openblas-dev --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted' returned a non-zero code: 3

Dockerfile的重要部分:

FROM python:3.5.2-alpine

ADD repositories /etc/apk/repositories

RUN apk upgrade --update
RUN apk add --update libstdc++ curl ca-certificates bash
RUN apk add openblas openblas-dev --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted
RUN apk add --update py-scipy py-numpy py-numpy-dev

存储库文件是

http://dl-cdn.alpinelinux.org/alpine/v3.4/main
@testing http://dl-cdn.alpinelinux.org/alpine/edge/testing
@community http://dl-cdn.alpinelinux.org/alpine/edge/community

如何强制安装openblas

如果这是一个直截了当的问题,我是alpine的新人,请道歉。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案,

以下一行:

RUN apk add openblas openblas-dev --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted

应该是

RUN apk add openblas@community openblas-dev@community --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/community/ --allow-untrusted

现在,docker继续下一阶段。