我正在尝试设置一个可以运行CVTree 3.0(https://github.com/ghzuo/CVTree)的docker镜像。 但是,我收到此错误:
Sending build context to Docker daemon 206.1MB
Step 1/12 : FROM alpine AS dev
---> f70734b6a266
Step 2/12 : LABEL Version=0.1 MAINTAINER="Guanghong Zuo<ghzuo@fudan.edu.cn>" description="Docker image for CVTree"
---> Using cache
---> 4c4fa0e01651
Step 3/12 : RUN echo "http://dl-4.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
---> Using cache
---> 8804b90fbc7c
Step 4/12 : RUN apk --update add --no-cache g++ make cmake zlib-dev hdf5-dev hdf5-static
---> Running in 8847a87b5dbd
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/community/x86_64/APKINDEX.tar.gz
fetch http://dl-4.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
hdf5-dev (missing):
required by: world[hdf5-dev]
hdf5-static (missing):
required by: world[hdf5-static]
The command '/bin/sh -c apk --update add --no-cache g++ make cmake zlib-dev hdf5-dev hdf5-static' returned a non-zero code: 2
Dockerfile:
## Stage for build cvtree
FROM alpine AS dev
LABEL Version=0.1 \
MAINTAINER="Guanghong Zuo<ghzuo@fudan.edu.cn>"\
description="Docker image for CVTree"
## for develop environment
RUN echo "http://dl-4.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
RUN apk --update add --no-cache g++ make cmake zlib-dev hdf5-dev hdf5-static
## Build cvtree
WORKDIR /root
COPY ./src /root/cvtree/src
COPY ./CMakeLists.txt /root/cvtree/
RUN mkdir cvtree/build/ && cd cvtree/build/ && cmake .. && make
## Stage for run cvtree
FROM alpine AS run
COPY --from=dev /root/cvtree/build/bin/* /usr/local/bin/
RUN apk --update add --no-cache libgomp libstdc++
## for workplace
WORKDIR /root/data
如何解决我的问题?任何帮助将不胜感激。
答案 0 :(得分:2)
可用软件包列表中缺少软件包hdf5-Dev
和hdf5-static
,因此构建失败。
尝试使用阿尔卑斯山边缘社区码头工人形象:
## for develop environment
RUN apk --update add --no-cache g++ make cmake zlib-dev
RUN apk add hdf5-dev hdf5-static --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community
答案 1 :(得分:0)
我执行了以下操作,并且效果很好
RUN apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/community hdf5-dev