Ubuntu18.04でrbenvを使用してRubyonRailsをインストールする方法
序章
Ruby on Rails は、サイトやWebアプリの作成を検討している開発者に最も人気のあるアプリケーションスタックの1つです。 Rubyプログラミング言語とRails開発フレームワークを組み合わせることで、アプリの開発が簡単になります。
コマンドラインツールrbenvを使用してRubyとRailsを簡単にインストールできます。 rbenvを使用すると、Ruby on Railsアプリケーションを開発するための堅固な環境が提供されます。これにより、Rubyのバージョンを簡単に切り替えて、チーム全体を同じバージョンに保つことができます。
rbenvは、Rubyのアプリケーション固有のバージョンを指定するためのサポートを提供し、ユーザーごとにグローバルRubyを変更できるようにし、環境変数を使用してRubyバージョンをオーバーライドできるようにします。
このチュートリアルでは、rbenvを介したRubyとRailsのインストールプロセスについて説明します。
前提条件
このチュートリアルに従うには、次のものが必要です。
- Ubuntu18.04初期サーバーセットアップガイドに従ってセットアップされた1つのUbuntu18.04サーバー(sudo非rootユーザーとファイアウォールを含む)。
- Ubuntu 18.04 にNode.jsをインストールする方法で説明されているように、Node.jsは公式PPAを使用してインストールされます。 Asset PipelineなどのいくつかのRails機能は、JavaScriptランタイムに依存しています。 Node.jsはこの機能を提供します。
ステップ1-rbenvと依存関係をインストールする
Rubyは、パッケージマネージャーからインストールできるいくつかのパッケージに依存しています。 それらがインストールされたら、rbenvをインストールし、それを使用してRubyをインストールできます。
まず、パッケージリストを更新します。
sudo apt update
次に、Rubyのインストールに必要な依存関係をインストールします。
sudo apt install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm5 libgdbm-dev
依存関係がダウンロードされたら、rbenv自体をインストールできます。 rbenvリポジトリをGitHubからディレクトリ~/.rbenv
に複製します。
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
次に、~/.rbenv/bin
を$PATH
に追加して、rbenv
コマンドラインユーティリティを使用できるようにします。 これを行うには、~/.bashrc
ファイルを変更して、将来のログインセッションに影響を与えます。
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
次に、コマンドeval "$(rbenv init -)"
を~/.bashrc
ファイルに追加して、rbenvが自動的にロードされるようにします。
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
次に、~/.bashrc
ファイルに加えた変更を現在のシェルセッションに適用します。
source ~/.bashrc
type
コマンドを使用して、rbenvが正しく設定されていることを確認します。これにより、rbenv
コマンドに関する詳細情報が表示されます。
type rbenv
ターミナルウィンドウに次のように表示されます。
Outputrbenv is a function rbenv () { local command; command="${1:-}"; if [ "$#" -gt 0 ]; then shift; fi; case "$command" in rehash | shell) eval "$(rbenv "sh-$command" "$@")" ;; *) command rbenv "$command" "$@" ;; esac }
次に、[ruby-build]( https://github.com/rbenv/ruby-build )プラグインをインストールします。 このプラグインは、rbenv install
コマンドを追加します。これにより、Rubyの新しいバージョンのインストールプロセスが簡素化されます。
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
この時点で、rbenvとruby-buildの両方がインストールされています。 次にRubyをインストールしましょう。
ステップ2–ruby-buildを使用したRubyのインストール
ruby-build
プラグインがインストールされたので、簡単なコマンドで必要なバージョンのRubyyをインストールできます。 まず、Rubyの利用可能なすべてのバージョンをリストしましょう。
rbenv install -l
そのコマンドの出力は、インストールすることを選択できるバージョンの長いリストである必要があります。
Ruby 2.5.1をインストールしましょう。
rbenv install 2.5.1
Rubyのインストールは時間のかかるプロセスになる可能性があるため、インストールが完了するまでに時間がかかるように準備してください。
インストールが完了したら、global
サブコマンドを使用して、Rubyのデフォルトバージョンとして設定します。
rbenv global 2.5.1
バージョン番号を確認して、Rubyが正しくインストールされていることを確認します。
ruby -v
Rubyのバージョン2.5.1をインストールした場合、上記のコマンドの出力は次のようになります。
Outputruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
別のバージョンのRubyをインストールして使用するには、rbenv install 2.3.0
やrbenv global 2.3.0
のように、別のバージョン番号でrbenv
コマンドを実行します。
これで、少なくとも1つのバージョンのRubyがインストールされ、デフォルトのRubyバージョンが設定されました。 次に、gemとRailsをセットアップします。
ステップ3–宝石の操作
Gemsは、Rubyライブラリーを配布する方法です。 gem
コマンドを使用して、これらの宝石を管理します。 このコマンドを使用してRailsをインストールします。
gemをインストールすると、インストールプロセスでローカルドキュメントが生成されます。 これにより、各gemのインストールプロセスにかなりの時間がかかる可能性があるため、この機能をオフにする構成設定を含む~/.gemrc
というファイルを作成して、ローカルドキュメントの生成をオフにします。
echo "gem: --no-document" > ~/.gemrc
Bundler は、プロジェクトのgem依存関係を管理するツールです。 次に、Bundlergemをインストールします。 Railsはそれに依存しているので。
gem install bundler
次のような出力が表示されます。
OutputFetching: bundler-1.16.2.gem (100%) Successfully installed bundler-1.16.2 1 gem installed
gem env
コマンド(サブコマンドenv
はenvironment
の略)を使用して、gemの環境と構成について詳しく知ることができます。 home
引数を使用すると、次のようにgemがインストールされている場所を確認できます。
gem env home
次のような出力が表示されます。
/home/sammy/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0
gemをセットアップしたら、Railsをインストールできます。
ステップ4–Railsのインストール
Railsをインストールするには、gem install
コマンドと-v
フラグを使用してバージョンを指定します。 このチュートリアルでは、バージョン5.2.0
を使用します。
gem install rails -v 5.2.0
gem
コマンドは、指定したgemとすべての依存関係をインストールします。 Railsは複雑なWeb開発フレームワークであり、多くの依存関係があるため、プロセスが完了するまでに時間がかかります。 最終的に、Railsがインストールされていることを示すメッセージとその依存関係が表示されます。
Output... Successfully installed rails-5.2.0 38 gems installed
注:別のバージョンのRailsをインストールする場合は、検索を実行して有効なバージョンのRailsを一覧表示できます。これにより、可能なバージョンの長いリストが出力されます。 次に、4.2.7などの特定のバージョンをインストールできます。
gem search '^rails$' --all gem install rails -v 4.2.7
Railsの最新バージョンをインストールする場合は、バージョンを指定せずにコマンドを実行します。
gem install rails
rbenvは、 shims のディレクトリを作成することによって機能します。このディレクトリは、現在有効になっているRubyバージョンで使用されるファイルを指します。 rehash
サブコマンドを介して、rbenvはそのディレクトリにシムを維持し、サーバーにインストールされているすべてのバージョンのRubyのすべてのRubyコマンドと一致させます。 Railsのように、コマンドを提供する新しいバージョンのRubyまたはgemをインストールするときはいつでも、以下を実行する必要があります。
rbenv rehash
次のコマンドを使用して、バージョンを印刷して、Railsが正しくインストールされていることを確認します。
rails -v
正しくインストールされている場合は、インストールされたRailsのバージョンが表示されます。
OutputRails 5.2.0
この時点で、Ruby on Railsインストールのテストを開始し、Webアプリケーションの開発を開始できます。 rbenvを最新の状態に保つことを見てみましょう。
ステップ5–rbenvを更新する
Gitを使用してrbenvを手動でインストールしたため、~/.rbenv
ディレクトリのgit pull
コマンドを使用して、いつでもインストールを最新バージョンにアップグレードできます。
cd ~/.rbenv git pull
これにより、利用可能な最新バージョンのrbenvを使用できるようになります。
ステップ6–Rubyバージョンのアンインストール
Rubyの追加バージョンをダウンロードすると、~/.rbenv/versions
ディレクトリに必要以上のバージョンが蓄積される可能性があります。 ruby-build
plugin's' uninstall
サブコマンドを使用して、これらの以前のバージョンを削除します。
たとえば、これを入力すると、Rubyバージョン2.1.3がアンインストールされます。
rbenv uninstall 2.1.3
rbenv uninstall
コマンドを使用すると、古いバージョンのRubyをクリーンアップして、現在使用している以上のインストールが行われないようにすることができます。
ステップ7–rbenvをアンインストールする
rbenvを使用しないことにした場合は、システムから削除できます。
これを行うには、最初にエディターで~/.bashrc
ファイルを開きます。
nano ~/.bashrc
次の2行を見つけて、ファイルから削除します。
〜/ .bashrc
... export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)"
ファイルを保存して、エディターを終了します。
次に、次のコマンドを使用して、rbenvとインストールされているすべてのRubyバージョンを削除します。
rm -rf `rbenv root`
ログアウトして再度ログインし、シェルに変更を適用します。
結論
このチュートリアルでは、rbenv
とRubyonRailsをインストールしました。 ここから、これらの環境をより堅牢にする方法について詳しく知ることができます。
アプリケーションのスケーラビリティ、集中化、安定性を高めるデフォルトのsqlite3データベースではなく、PostgreSQLまたはMySQLでRubyonRailsを使用する方法を探ります。 ニーズが大きくなるにつれて、複数のサーバー間でRubyonRailsアプリケーションをスケーリングする方法を学ぶこともできます。