docker - Alpine:不可满足的约束
问题描述
我正在尝试在 alpine 中安装一个软件包,在这种情况下,我指定了“jasper-dev”,但我和其他许多人都发生过这种情况。我在终端中得到的输出是:
/ # apk add jasper-dev
ERROR: unsatisfiable constraints:
jasper-dev (missing):
required by: world [jasper-dev]
但是,当我在https://pkgs.alpinelinux.org/搜索包时,会出现该包。
这是我的 Dockerfile。
FROM python:3.7-alpine
RUN echo "@testing http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
RUN apk --update --no-cache add py3-numpy py3-pandas@testing \
build-base \
openblas-dev \
unzip \
wget \
cmake \
ca-certificates \
libjpeg \
libjpeg-turbo-dev \
libpng-dev \
jasper-dev \
tiff-dev \
libwebp-dev \
clang-dev \
linux-headers
我怎样才能安装这个包?
解决方案
我展示了 alpine 的版本,cat /etc/alpine-release
发现它是3.12.0。然后我在https://pkgs.alpinelinux.org/中搜索分支v3.12中的包jasper-dev,我们看到它没有出现。
所以我们查看以前的分支,发现它出现在v3.10中,所以我修改了我的 Dockerfile 以将该 repo 添加到/etc/apk/repositories
with RUN echo 'http: // dl-cdn. alpinelinux.org/alpine/v3.10/main ' >> /etc/apk/repositories
。这将通过执行docker build来安装包