ฉันอยู่ในขั้นตอนการสร้างอิมเมจ Docker ใหม่และฉันต้องการติดตั้ง NVM เพื่อที่ฉันจะได้จัดการ nodejs
การอ่านเอกสารเกี่ยวกับวิธีการติดตั้ง NVM ที่พวกเขาระบุว่าคุณต้องจัดหาไฟล์. bashrc ของคุณเพื่อเริ่มใช้ NVM
ฉันพยายามตั้งค่านี้ใน Dockerfile แต่จนถึงขณะนี้การสร้างล้มเหลวด้วยข้อผิดพลาด:
"bash: nvm: ไม่พบคำสั่ง"
บรรทัดที่เกี่ยวข้องจาก Dockerfile ของฉันมีดังนี้:
ADD files/nvm_install.sh /root/
RUN chmod a+x /root/nvm_install.sh
RUN bash -c "/root/nvm_install.sh"
RUN bash -l -c "source /root/.bashrc"
RUN cd /root
RUN bash -l -c "nvm install 0.10.31"
นี่คือผลลัพธ์จากการพยายามสร้าง:
นักเทียบท่าสร้าง -t nginx_dock
Step 0 : FROM ubuntu
---> 826544226fdc
Step 1 : MAINTAINER dficociello
---> Using cache
---> da3bc340fbb3
Step 2 : RUN apt-get update
---> Using cache
---> 6b6b611feb4f
Step 3 : RUN apt-get install nginx curl -y
---> Using cache
---> 159eb0b16d23
Step 4 : RUN touch /root/.bashrc
---> Using cache
---> 5e9e8216191b
Step 5 : ADD files/nginx.conf /etc/nginx/
---> Using cache
---> c4a4a11296a2
Step 6 : ADD files/nvm_install.sh /root/
---> Using cache
---> b37cba2a18ca
Step 7 : RUN chmod a+x /root/nvm_install.sh
---> Using cache
---> bb13e2a2893d
Step 8 : RUN bash -c "/root/nvm_install.sh"
---> Using cache
---> 149b49a8fc71
Step 9 : RUN bash -l -c "source /root/.bashrc"
---> Running in 75f353ed0d53
---> 0eae8eae7874
Removing intermediate container 75f353ed0d53
Step 10 : RUN cd /root
---> Running in feacbd998dd0
---> 284293ef46b0
Removing intermediate container feacbd998dd0
Step 11 : RUN bash -l -c "nvm install 0.10.31"
---> Running in 388514d11067
bash: nvm: command not found
2014/09/17 13:15:11 The command [/bin/sh -c bash -l -c "nvm install 0.10.31"] returned a non-zero code: 127
ฉันค่อนข้างใหม่กับ Docker ดังนั้นฉันอาจพลาดบางอย่างพื้นฐานในการเขียน Dockerfiles แต่จนถึงตอนนี้การอ่านทั้งหมดที่ฉันได้ทำไปยังไม่ได้แสดงวิธีแก้ปัญหาที่ดี