rbenv-installerを使用してUbuntuにrubyをインストールします

ハブのrbenvに関する記事はすでにいくつかあります( onetwothree )が、どれも非常に便利なrbenv-installerツールについて言及していません。 このギャップをこの記事で埋めます。

インストールについて説明する前に、 rbenvに満足している理由と、 RVMに切り替えた理由を説明します。

私のプロジェクトの1つでは、cronを使用してrakeタスクを定期的に実行する必要がありました。 whenewer gemを使用して、crontabでcronのタスクを作成し、 書き留めました 。 それから私はまだRVMを使用し、cronはログに次のようなものを書きました。
bundle: command not found

Googleを使用して解決策を検索しましたが、同じ問題の言及がなかったときに問題が見つかりました。 チケットはクローズされ、すべてがrbenvで機能することが言及されました 。 rbenvをインストールしましたが、追加設定なしで、cronタスクが思いどおりに機能し始めました。 その日から、新しいプロジェクトではrbenvのみを使用します。

さて、今トピックについて。

rbenvをインストールする


私はこのOSをデスクトップおよびサーバーで使用しているため、Ubuntuでのインストールプロセスについて説明します。 ステップバイステップで、新しいUbuntu Server 12.04へのフルインストールを検討してください。

まず、gitとcurlをインストールします。
sudo apt-get -y install git-core curl

次に、インストールスクリプトをダウンロードして実行します。
curl -L raw.github.com/fesplugas/rbenv-installer/master/bin/rbenv-installer | bash

このスクリプトはrbenvだけでなく、ruby-buildとrbenv-varsもインストールします。

次に、ホームディレクトリにある.bashrcファイルに次のコードを追加します。
if [ -d $HOME/.rbenv ]; then
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
fi


このコードを行の前に置くことが非常に重要です。
# If not running interactively, don't do anything
[ -z "$PS1" ] && return

コメントには、インタラクティブに実行されていなければ何もしません。

確かに、このニュアンスのために、cronはRVMがインストールされたバンドルを見つけることができませんでした。バンドル自体はファイルの最後に書き込まれます。 rvmノートには次のように書かれています:

他のシェルでRVMをインタラクティブに使用したい場合は、すべてのPATH /変数設定の後、シェルの読み込みファイル(bashの場合は.bashrcまたは.bash_profile、zshの場合は.zshenv)の最後に次の行を配置します

おそらく、.bashrcの先頭でもRVMを初期化すると、cronはバンドルが何であるかを見つけますが、ときどきテストすることもありますが、最終的にrbenvに切り替えました。

.bashrcを保存した後、次のコマンドでリロードする必要があります。
. ~/.bashrc

Rbenvを使用する準備ができました。

Rubyに必要なものをすべてインストールします


Ubuntuでrubyが適切に動作するには、最初に一連のパッケージをインストールする必要があることは誰もが知っています。 RVMには、インストールする必要があるものを見つけるのに役立つrvm要件コマンドがあります。 rbenvでは、このステップはより便利に編成されています。
rbenv bootstrap-ubuntu-12-04

このコマンドは、必要なすべてのパッケージをインストールします。その後、目的のバージョンのRubyをインストールできます。

Rubyをインストールする
ここで、 Tabキーでrbenvで使用できるコマンドを確認できます。また、rubyをインストールする前に、 rbenv installコマンドを入力した後にタブをクリックして、使用可能なバージョンを確認できます。
画像

Rubyの最新バージョンをインストールします。
rbenv install 1.9.3-p194

インストール時にお茶を飲むことができ、完了するとシステムにインストールされたバージョンのRubyが作成されます。
rbenv global 1.9.3-p194

最後の仕上げ


次に、gemsets、bandr、およびrakeをインストールします。
rbenv bootstrap

最後に、 rbenv rehashを実行して、バンドル実行可能ファイルにアクセスします。

実際、これはサーバーにとって十分です。 今では本格的なルビーがあり、cronでも見ることができます。
作業中のマシンには、 rbenv-bundlerをインストールして、同じannotateの前にbundle execを書き込まないようにします。

プロジェクトページでインストールと使用について読むことができます

トピックに関するリンク

Source: https://habr.com/ru/post/J146021/


All Articles