2017-08-26 14 views
5
# Dockerfile 
FROM node:7-alpine 
RUN mkdir -p /src/app 
WORKDIR /src/app 
COPY package.json /src/app/package.json 
RUN npm install 
COPY . /src/app 
EXPOSE 3000 
CMD ['npm', 'start'] 

मैं ऊपर Dockerfile साथ Dockerizing nodejs अनुप्रयोगों के लिए एक katacoda.com व्यायाम पूरा करने के लिए कोशिश कर रहा हूँ से डोकर कंटेनर चल नहीं मिला। निर्माण पूरा करता है लेकिन छवि चल तुरंत इस्तीफा और डोकर लॉग में मैं देख रहा हूँ:NPM जब नोड छवि

/bin/sh: [npm,: not found 

मैं docker -it nodeapp /bin/bash जो त्रुटि docker: Error response from daemon: oci runtime error: container_linux.go:262: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory". उठाया तो मुझे यकीन है कि यहाँ क्या हो रहा है नहीं कर रहा हूँ के साथ इंटरैक्टिव मोड में कंटेनर चलाने का भी प्रयास ।

+0

'docker -it nodeapp sh'' और फिर 'npm' को देखने के लिए देखें कि क्या npm इंस्टॉल किया गया है या –

+0

नहीं है क्योंकि अल्पाइन को उपरोक्त त्रुटि का कारण नहीं है। एक बार जब आप –

+0

में हों तो 'sh' के साथ आज़माएं और' npm' 'की जांच करें @TuanAnhTran 'डॉकर -ट नोडैप sh' काम करता है और npm स्थापित होता है और npm प्रारंभ – Peter

उत्तर

5

कारण यह काम नहीं करता एकल उद्धरण

CMD ['npm', 'start'] 

है

CMD ["npm", "start"] 

होना चाहिए आप दोहरे उद्धरण चिह्नों का उपयोग नहीं करते हैं, डोकर एकल उद्धरण निकाल देंगे और के रूप में आदेश की प्रक्रिया [npm, start]

है यही कारण है कि आप त्रुटि [npm, देखें: नहीं मिला

+0

आज मैंने सीखा। धन्यवाद –

+0

मुझे एकल उद्धरण का उपयोग करने के लिए उपयोग किया जाता है, आज मैंने भी सीखा –

संबंधित मुद्दे