在 Docker Alpine 上安装 numpy

2024-01-21

我正在尝试在基于 Alpine 3.1 的 docker 容器中安装 numpy。我正在使用以下 Dockerfile:

FROM alpine:3.1
RUN apk add --update make cmake gcc g++ gfortran
RUN apk add --update python py-pip python-dev
RUN pip install cython
RUN pip install numpy

这运行良好直到pip install numpy当我收到以下错误时:

error: Command "gcc -fno-strict-aliasing -Os -fomit-frame-pointer -DNDEBUG -Os -fomit-frame-pointer -fPIC -Inumpy/core/include -Ibuild/src.linux-x86_64-2.7/numpy/core/include/numpy -Inumpy/core/src/private -Inumpy/core/src -Inumpy/core -Inumpy/core/src/npymath -Inumpy/core/src/multiarray -Inumpy/core/src/umath -Inumpy/core/src/npysort -I/usr/include/python2.7 -Ibuild/src.linux-x86_64-2.7/numpy/core/src/private -Ibuild/src.linux-x86_64-2.7/numpy/core/src/private -Ibuild/src.linux-x86_64-2.7/numpy/core/src/private -c build/src.linux-x86_64-2.7/numpy/core/src/npymath/ieee754.c -o build/temp.linux-x86_64-2.7/build/src.linux-x86_64-2.7/numpy/core/src/npymath/ieee754.o" failed with exit status 1

easy_install-2.7 numpy给出同样的错误。

我缺少任何配置/安装步骤吗?


我自己在这方面遇到了一些麻烦,长话短说,我鼓励你问问这是否真的值得这么麻烦。当您开始向堆栈中添加 pandas、gpus 和 scipy 等内容时,Numpy 非常巨大,因此在 alpine 上构建它的好处是有限的,当您的空间有 500MB 时,使用 Debian、Arch 甚至 Ubuntu 所节省的费用相对较小无论如何这个图书馆。

话虽如此,我拼凑了一张图像来做到这一点。我需要 musl-dev、linux-headers 和 g++ 作为构建时依赖项。我还最终需要从边缘添加 openblas 以便在堆栈中稍后添加某些内容,因此可能也需要一些依赖项。但我相信只需添加三个前库即可

apk --no-cache add musl-dev linux-headers g++

应该足以防止您遇到的 gcc 错误。您可以在以下位置查看图像:https://hub.docker.com/r/o76923/alpine-numpy-stack/ https://hub.docker.com/r/o76923/alpine-numpy-stack/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Docker Alpine 上安装 numpy 的相关文章

随机推荐