2017-06-16 13 views
0

私はdockerファイルで作業して、Codenvyにカスタムワークスペースを作成しています。私は、ワークスペースのすべてが正しくインストールされているようだ作成するときに、私はruby -vを入力すると、ワークスペースのオープンと私は得る:DockerでRVMを使用してインストールしたときにRubyとRailsの "path not found"が表示される

bash: ruby: command not found

同じレールのために:

[email protected]:/projects$ rails -v 
bash: rails: command not found 

私はRVMのリストを入力した場合、私は

を取得します
[email protected]:/projects$ rvm info 

ruby-2.4.0: 

    system: 
    uname:  "Linux de98ec223612 3.10.0-514.10.2.el7.x86_64 #1 SMP Fri Mar 3 00:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux" 
    name:   "Ubuntu" 
    version:  "16.04" 
    architecture: "x86_64" 
    bash:   "/bin/bash => GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)" 
    zsh:   " => not installed" 
    remote path: "ubuntu/16.04/x86_64" 

    rvm: 
    version:  "rvm 1.29.1 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io/]" 
    updated:  "5 minutes 31 seconds ago" 
    path:   "/home/user/.rvm" 
    autolibs:  "[4] Allow RVM to use package manager if found, install missing dependencies, install package manager (only OS X)." 

    ruby: 
    interpreter: "ruby" 
    version:  "2.4.0p0" 
    date:   "2016-12-24" 
    platform:  "x86_64-linux" 
    patchlevel: "2016-12-24 revision 57164" 
    full_version: "ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]" 

    homes: 
    gem:   "/home/user/.rvm/gems/ruby-2.4.0" 
    ruby:   "/home/user/.rvm/rubies/ruby-2.4.0" 

binaries: 
    ruby:   "/home/user/.rvm/rubies/ruby-2.4.0/bin/ruby" 
    irb:   "/home/user/.rvm/rubies/ruby-2.4.0/bin/irb" 
    gem:   "/home/user/.rvm/rubies/ruby-2.4.0/bin/gem" 
    rake:   "/home/user/.rvm/rubies/ruby-2.4.0/bin/rake" 

    environment: 
    PATH:   "/home/user/.rvm/gems/ruby-2.4.0/bin:/home/user/.rvm/gems/[email protected]/bin:/home/user/.rvm/rubies/ruby-2.4.0/bin:/usr/lib/jvm/java-1.8.0-open 
jdk-amd64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bundle/bin:/usr/lib/postgresql/9.6/bin:/home/user/.rvm/bin" 
    GEM_HOME:  "/home/user/.rvm/gems/ruby-2.4.0" 
    GEM_PATH:  "/home/user/.rvm/gems/ruby-2.4.0:/home/user/.rvm/gems/[email protected]" 
    MY_RUBY_HOME: "/home/user/.rvm/rubies/ruby-2.4.0" 
    IRBRC:  "/home/user/.rvm/rubies/ruby-2.4.0/.irbrc" 
    RUBYOPT:  "" 
    gemset:  "" 

ものが正しくインストールされているように見えます。

/home/user/.rvm/rubies/ruby-2.4.0/bin/ruby -vと入力すると、正しいルビーバージョンが表示されます。 /home/user/.rvm/rubies/ruby-2.4.0/binはPATHにありますなぜ検索されていませんか?

これは私のドッカーファイルの関連部分です。

# Install RVM 
RUN gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB &&\ 
    echo progress-bar >> ~/.curlrc &&\ 
    \curl -sSL https://get.rvm.io | bash -s stable &&\ 
    /bin/bash -l -c 'source ~/.rvm/scripts/rvm' 

# Install Ruby 
RUN /bin/bash -l -c 'rvm requirements' &&\ 
    /bin/bash -l -c 'rvm install ${RUBY_VERSION}' &&\ 
    /bin/bash -l -c 'rvm use ${RUBY_VERSION} --default' &&\ 
    /bin/bash -l -c 'rvm rubygems current' 

# Install bundler 
RUN /bin/bash -l -c 'gem install bundler' 

# Install Rails 
RUN /bin/bash -l -c 'gem install rails' 

RUN echo $PATH 

EXPOSE 3000 
WORKDIR /projects  

CMD /bin/bash -l -c 'source ~/.rvm/scripts/rvm' && sudo service postgresql start && tail -f /dev/null 

これらのコマンドは/home/user/.rvm/rubies/ruby-2.4.0/bin使用しなくても機能するようになってすべてのヘルプは非常に高く評価されるだろう。

答えて

0

は、あなたのチームに受け入れた場合、おそらくEclipseのチェはRoRのために提供するベースdockerfileを開始することが容易である:https://github.com/eclipse/che-dockerfiles/blob/master/recipes/ruby_rails/Dockerfile

あなたに基本を取得する必要があり、それは、最新のコミュニティによって保たれています。その後、必要な他のツール、ライブラリ、depsでこれを拡張することができます。

0

私は同じ問題を抱えていたし、最終的に私が

source /opt/rvm/scripts/rvm 
source /etc/profile.d/ruby.sh 

export PATH=$PATH:/opt/rvm/bin 

ソースとのラインで終わる/root/.bashrcファイルをアップロードして、それを修正し、私が追加されます。エクスポートはRVMによってインストール時に追加されました。残りのbashrcファイルは、Debianによってインストールされたコンテンツです。私はこれらの行を追加しました。

マイruby.shファイルは、トリックを行うこと、私にとって

#!/bin/sh 
export RUBY_HOME=/opt/rvm/rubies/default 

が含まれています。/bin/bash(非シェル)を使ってログインするか、/ bin/bash -l -cを使って "ここにコマンドが来る"と私のコマンドrvmとrubyの両方が応答します。また、私のRUBY_HOMEとGEM_PATH、...はすべて満たされています。

私の現在のルビーのドッキングウィンドウのインストールはここで見つけることができます: https://github.com/vindevoy/dockerhub-debian-ruby(ソース) https://hub.docker.com/r/vindevoy/debian-ruby/(画像)

+0

は言及し忘れました。私は/ optにrvmをインストールします。 – user3256848

関連する問題