簡體   English   中英

為Ruby On Rails環境創建Docker鏡像時出錯(來自Dockerfile)

[英]Error when creating a Docker image for Ruby On Rails environment (from a Dockerfile)

我想這是一個環境問題。 當我手動執行它(沒有Dockerfile)時,它可以工作。

這是我的Dockerfile:

FROM ubuntu:14.04
RUN apt-get update
RUN apt-get upgrade --assume-yes
RUN apt-get install wget vim git --assume-yes
# install RVM
RUN apt-get install build-essential curl --assume-yes
RUN curl -L https://get.rvm.io | bash -s stable
RUN echo 'source /etc/profile.d/rvm.sh' >> ~/.bashrc
RUN /usr/local/rvm/bin/rvm-shell -c "rvm requirements"
# install Ruby
RUN /usr/local/rvm/bin/rvm-shell -c "rvm autolibs enable"
RUN /usr/local/rvm/bin/rvm-shell -c "rvm install 2.1.2"
# install Rails
RUN echo "gem: --no-rdoc --no-ri" >> ~/.gemrc
RUN gem install rails -v 4.1.5
# install nodeJS
RUN sudo apt-get install nodejs --assume-yes
EXPOSE 3000

比我建立:

sudo docker build -t="james/rails" .

我收到了這個錯誤:

Step 11 : RUN gem install rails -v 4.1.5
 ---> Running in 44efc6b7c254
/bin/sh: 1: gem: not found
2014/09/04 18:33:52 The command [/bin/sh -c gem install rails -v 4.1.5] returned a non-zero code: 127

嘗試RUN /bin/bash -l -c "gem install rails -v 4.1.5"而不是你在那里的RUN /bin/bash -l -c "gem install rails -v 4.1.5"線。 這有什么改變嗎?

在Alex Lynham的幫助下,這是一個有效的Dockerfile:

FROM ubuntu:14.04

RUN apt-get update
RUN apt-get install wget vim git --assume-yes

# install RVM
RUN apt-get install build-essential curl --assume-yes
RUN curl -L https://get.rvm.io | bash -s stable
RUN echo 'source /etc/profile.d/rvm.sh' >> ~/.bashrc
RUN /usr/local/rvm/bin/rvm-shell -c "rvm requirements"

# install Ruby
RUN /bin/bash -l -c "rvm autolibs enable"
RUN /bin/bash -l -c "rvm install 2.1.2"

# install Rails
RUN echo "gem: --no-rdoc --no-ri" >> ~/.gemrc
RUN /bin/bash -l -c "gem install rails -v 4.1.5"

# install nodeJS
RUN sudo apt-get install nodejs --assume-yes

EXPOSE 3000

您需要先安裝rubygems才能使用它。

RUN apt-get install rubygems

另請參閱: 我可以在Ubuntu上使用apt-get安裝gem嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM