栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么在Alpine Linux上安装Pandas会花费很多时间

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么在Alpine Linux上安装Pandas会花费很多时间

基于Debian的映像仅

python pip
用于安装以下
.whl
格式的软件包:

  Downloading pandas-0.22.0-cp36-cp36m-manylinux1_x86_64.whl (26.2MB)  Downloading numpy-1.14.1-cp36-cp36m-manylinux1_x86_64.whl (12.2MB)

WHL格式是一种比每次都从源代码重新构建更快,更可靠的安装Python软件的方法。WHL文件仅需移动到要安装的目标系统上的正确位置,而源分发需要在安装之前进行构建。

轮包

pandas
numpy
基于高山平台,图像不支持。这就是为什么
pythonpip
在构建过程中使用它们进行安装时,我们总是从alpine的源文件中编译它们:

  Downloading pandas-0.22.0.tar.gz (11.3MB)  Downloading numpy-1.14.1.zip (4.9MB)

我们可以在图像构建过程中看到以下内部容器:

/ # ps auxPID   USER     TIME   COMMAND    1 root       0:00 /bin/sh -c pip install pandas    7 root       0:04 {pip} /usr/local/bin/python /usr/local/bin/pip install pandas   21 root       0:07 /usr/local/bin/python -c import setuptools, tokenize;__file__='/tmp/pip-build-en29h0ak/pandas/setup.py';f=getattr(tokenize, 'open', open)(__file__);pre=f.read().replace('rn', 'n  496 root       0:00 sh  660 root       0:00 /bin/sh -c gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DTHREAD_STACK_SIZE=0x100000 -fPIC -Ibuild/src.linux-x86_64-3.6/numpy/core/src/pri  661 root       0:00 gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DTHREAD_STACK_SIZE=0x100000 -fPIC -Ibuild/src.linux-x86_64-3.6/numpy/core/src/private -Inump  662 root       0:00 /usr/libexec/gcc/x86_64-alpine-linux-musl/6.4.0/cc1 -quiet -I build/src.linux-x86_64-3.6/numpy/core/src/private -I numpy/core/include -I build/src.linux-x86_64-3.6/numpy/core/includ  663 root       0:00 ps aux

如果我们

Dockerfile
稍作修改:

FROM python:3.6.4-alpine3.7RUN apk add --no-cache g++ wgetRUN wget https://pypi.python.org/packages/da/c6/0936bc5814b429fddb5d6252566fe73a3e40372e6ceaf87de3dec1326f28/pandas-0.22.0-cp36-cp36m-manylinux1_x86_64.whlRUN pip install pandas-0.22.0-cp36-cp36m-manylinux1_x86_64.whl

我们得到以下错误:

Step 4/4 : RUN pip install pandas-0.22.0-cp36-cp36m-manylinux1_x86_64.whl ---> Running in 0faea63e2bdapandas-0.22.0-cp36-cp36m-manylinux1_x86_64.whl is not a supported wheel on this platform.The command '/bin/sh -c pip install pandas-0.22.0-cp36-cp36m-manylinux1_x86_64.whl' returned a non-zero pre: 1

不幸的是,在

pandas
Alpine映像上安装的唯一方法是等到构建完成。

当然

pandas
,例如,如果要在CI中使用Alpine映像,最好的方法是将其编译一次,将其推送到任何注册表中,然后将其用作满足您需要的基础映像。

编辑: 如果您想使用Alpine图像,

pandas
可以拉我的nickgryg / alpine-pandas
docker
图像。这是
pandas
在Alpine平台上预编译的python图像。它应该可以节省您的时间。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/409219.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号