2015-10-29 9 views
6

पर numpy इंस्टॉल करना मैं अल्पाइन 3.1 के आधार पर एक डॉकर कंटेनर में 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 एक ही त्रुटि देता है: जब मैं निम्नलिखित त्रुटि मिलती है

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 तक: मैं उपयोग कर रहा हूँ निम्नलिखित Dockerfile।

क्या कोई कॉन्फ़िगरेशन/स्थापना चरण है जो मुझे याद आ रही है?

उत्तर

14

यदि आपको pypi से numpy इंस्टॉल करने की आवश्यकता नहीं है, तो आप इसे अल्पाइन रिपॉजिटरीज़ से इंस्टॉल कर सकते हैं। पैकेज का नाम py-numpy है और testing भंडार में है, here देखें। मिनिमल Dockerfile उदाहरण है कि के लिए मुझे

FROM alpine:3.2 
ADD repositories /etc/apk/repositories 
RUN apk add --update python python-dev gfortran py-pip build-base [email protected] 

repositories फ़ाइल

http://dl-cdn.alpinelinux.org/alpine/v3.2/main 
@community http://dl-cdn.alpinelinux.org/alpine/edge/community 
+3

यह काम कर रहा है, लेकिन दुर्भाग्य से कि अजगर 2.7 के लिए numpy है। हमें 3.5 – leonprou

+2

के लिए एक संस्करण की आवश्यकता है एक अद्यतन के रूप में, आपको '@ परीक्षण' के बजाय हर जगह' @ समुदाय' पर स्विच करने की आवश्यकता है, उदा। 'py-numpy @ community' और' @community http: // dl-cdn.alpinelinux.org/alpine/edge/community' –

+0

मैंने इस पोस्ट में सब कुछ करने की कोशिश की है जिसमें @ जेम्स-एंडिकॉट छवि शामिल है और इंस्टॉल हमेशा क्रैश हो जाती है NumPy। Https://github.com/WattyAB/docker.alpine.numerical-python भी कोशिश की जो दुर्भाग्य से काम नहीं किया। बस 650 एमबी छवि के साथ रहेंगे .. – cardamom

2

मैं इस के साथ अपने आप को मुसीबत का एक सा होने किया गया है और, लम्बी कहानी संक्षेप में, मैं अगर पूछने के लिए प्रोत्साहित करेंगे की सामग्री काम करता है यह वास्तव में परेशानी के लायक है। जब आप पांडा, जीपीस, और एससीपी जैसे ढेर में चीज़ों को जोड़ना शुरू करते हैं तो अम्पी बहुत बड़ा होता है, इसलिए इसे अल्पाइन पर बनाने का लाभ सीमित होता है, डेबियन, आर्क या यहां तक ​​कि उबंटू का उपयोग करने पर बचत अपेक्षाकृत मामूली होती है जब आपकी 500 एमबी स्पेस चालू होती है वैसे भी इस पुस्तकालय।

कहा जा रहा है कि, मैंने एक छवि को एक साथ फेंक दिया जो यह करता है। मुझे बिल्ड-टाइम निर्भरता musl-dev, linux-headers, और g ++ के रूप में आवश्यक था। मैं स्टैक में बाद में कुछ के लिए किनारे से ओपनब्लैस जोड़ने की भी आवश्यकता महसूस करता हूं, इसलिए यह संभव है कि इससे कुछ निर्भरता भी आवश्यक हो। लेकिन मेरा मानना ​​है कि

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

आपको प्राप्त होने वाली जीसीसी त्रुटि को रोकने के लिए पर्याप्त होना चाहिए। आप https://hub.docker.com/r/o76923/alpine-numpy-stack/

0

पर छवि देख सकते हैं इस प्रयास करें:

RUN apk --no-cache --update-cache add gcc gfortran python python-dev py-pip build-base wget freetype-dev libpng-dev openblas-dev 
RUN ln -s /usr/include/locale.h /usr/include/xlocale.h 
RUN pip install pandas