macOSでrbenvを使用してRuby on Railsをインストールする方法

前書き

https://rubyonrails.org [Ruby on Rails]は、サイトやWebアプリの作成を検討している開発者に人気のあるアプリケーションスタックです。 Rubyプログラミング言語は、Rails開発フレームワークと組み合わせて、アプリ開発を迅速かつ効率的にします。

RubyとRailsをインストールする1つの方法は、コマンドラインツールhttps://github.com/rbenv/rbenv[rbenv]を使用することです。 rbenvを使用すると、Ruby on Railsアプリケーションを開発するための適切に制御された堅牢な環境が提供され、必要に応じてチーム全体のRubyのバージョンを簡単に切り替えることができます。

rbenvは、アプリケーション固有のRubyバージョンの指定をサポートし、ユーザーごとにグローバルRubyを変更できます。また、環境変数を使用してRubyバージョンをオーバーライドできます。

このチュートリアルでは、rbenvを使用して、ローカルmacOSマシンにRuby on Railsをインストールおよびセットアップします。

前提条件

このチュートリアルを実行するには、次のものが必要です。

  • macOSがインストールされた1台のコンピューターまたは仮想マシン、およびそのマシンへの管理アクセスとインターネット接続。 このチュートリアルは、https://www.apple.com/macos/mojave/ [macOS 10.14 Mojave]でテストされています。

  • https://www.digitalocean.com/community/tutorials/how-to-install-node-js-and-create-a-local-development-environment-on- macos [macOSでNode.jsをインストールしてローカル開発環境を作成する方法]。 Asset PipelineなどのいくつかのRails機能は、JavaScriptランタイムに依存しています。 Node.jsはこの機能を提供します。

ステップ1-rbenvのインストール

この手順では、rbenvをインストールし、起動時に自動的に起動することを確認します。 macOSでこれを行うには、このチュートリアルではパッケージマネージャーhttps://brew.sh/[Homebrew]を使用します。

Homebrewで `+ rbenv +`パッケージをダウンロードするには、次のコマンドを実行します:

brew install rbenv

これにより、rbenvとhttps://github.com/rbenv/ruby-build[ruby-build]プラグインがインストールされます。 このプラグインは、 `+ rbenv install +`コマンドを追加し、Rubyの新しいバージョンのインストールプロセスを合理化します。

次に、コマンド+ eval "$(rbenv init-)" + 〜/ .bash_profile + `ファイルに追加して、ターミナルを開いたときにrbenvが自動的にロードされるようにします。 これを行うには、お気に入りのテキストエディターで ` .bash_profile`を開きます。

nano .bash_profile

ファイルに次の行を追加します。

〜/ .bash_profile

eval "$(rbenv init -)"

ファイルを保存して終了します。

次に、 `+〜/ .bash_profile +`ファイルに加えた変更を現在のシェルセッションに適用します。

source ~/.bash_profile

rbenvが適切に設定されていることを確認するには、 `+ type `コマンドを使用します。これにより、 ` 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
}

この時点で、マシンにrbenvとruby-buildの両方がインストールされています。 これにより、次のステップでコマンドラインからRubyをインストールできます。

ステップ2-Rubyのインストール

ruby-buildプラグインがインストールされたら、単一のコマンドで必要なRubyの任意のバージョンをインストールできます。 この手順では、Rubyのバージョンを選択してマシンにインストールし、インストールを確認します。

最初に、 `+ -l +`フラグを使用して、Rubyの利用可能なすべてのバージョンをリストします。

rbenv install -l

このコマンドの出力は、インストールを選択できるバージョンの長いリストになります。

このチュートリアルでは、Rubyをインストールします。

rbenv install

Rubyのインストールには時間がかかる場合があるため、インストールに時間がかかるように準備してください。

インストールが完了したら、 `+ global`サブコマンドを使用してRubyのデフォルトバージョンとして設定します。

rbenv global

バージョン番号を確認して、Rubyが正しくインストールされたことを確認します。

ruby -v

出力は次のようになります。

Outputruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin18]

Rubyの異なるバージョンをインストールして使用するには、「+ rbenv install 」や「 rbenv global 」など、異なるバージョン番号で「 rbenv +」コマンドを実行します。

Rubyの1つのバージョンがインストールされ、デフォルトのRubyバージョンが設定されました。 次に、Rubyパッケージとライブラリ、または_gems_を使用するように設定し、Railsをインストールできるようにします。

ステップ3-宝石の使用

_Gems_は、Rubyエコシステム全体に配布できるRubyライブラリおよびプログラムのパッケージです。 これらのgemを管理するには、 `+ gem `コマンドを使用します。 この手順では、 ` gem +`コマンドを設定してRailsのインストールを準備します。

gemをインストールすると、インストールプロセスによりローカルドキュメントが生成されます。 これにより、各gemのインストールプロセスにかなりの時間がかかる可能性があるため、この機能をオフにする設定を含む「+〜/ .gemrc +」というファイルを作成して、ローカルドキュメント生成をオフにします。

echo "gem: --no-document" > ~/.gemrc

それが終わったら、 `+ gem +`コマンドを使用してhttps://bundler.io/[Bundler]をインストールします。これはプロジェクトのgem依存関係を管理するツールです。 これは、Railsが正しく機能するために必要です。

gem install bundler

次のような出力が表示されます。

OutputFetching: bundler-.gem
Successfully installed bundler-
1 gem installed

`+ gem env `コマンドを使用して、gemの環境と設定についてさらに学ぶことができます。 インストールされたgemの場所を確認するには、次のように ` home +`引数を使用します。

gem env home

次のような出力が表示されます。

/Users//.rbenv/versions//lib/ruby/gems/

gemワークフローをセットアップして検討したので、Railsを自由にインストールできます。

ステップ4-Railsのインストール

Railsをインストールするには、 + gem install`コマンドと + -v`フラグを使用してバージョンを指定します。 このチュートリアルでは、バージョン `+ 5.2.3 +`を使用します。

gem install rails -v

`+ gem +`コマンドは、指定したgemとすべての依存関係をインストールします。 Railsは複雑なWeb開発フレームワークであり、多くの依存関係があるため、プロセスの完了には時間がかかります。 最終的に、Railsがインストールされていることを示すメッセージとその依存関係が表示されます。

Output...
Successfully installed rails-
38 gems installed

rbenvは、_shims_のディレクトリ、または呼び出しをインターセプトし、それらを変更またはリダイレクトするライブラリを作成することで機能します。 この場合、シムは、現在有効になっているRubyバージョンで使用されるファイルにRubyコマンドを向けます。 `+ rehash `サブコマンドを介して、rbenvはそのディレクトリにshimsを保持し、サーバーにインストールされているRubyのすべてのバージョンのすべてのRubyコマンドに一致させます。 Rubyの新しいバージョンまたはRailsなどのコマンドを提供するgemをインストールするたびに、 ` rehash +`を使用する必要があります。

シムのディレクトリを再ハッシュするには、次のコマンドを実行します。

rbenv rehash

次のコマンドでRailsのバージョンを印刷して、Railsのインストールを確認します。

rails -v

インストールされたRailsのバージョンが表示されます。

OutputRails

Railsが正常にインストールされたら、Ruby on Railsインストールのテストを開始し、Webアプリケーションの開発を開始できます。 次のステップでは、rbenvとRubyを更新およびアンインストールする方法を学びます。

ステップ5-rbenvおよびRubyの更新とアンインストール

プロジェクトを保守する場合、必要に応じて更新およびアンインストールする方法を知っておくと役立ちます。 この手順では、rbenvをアップグレードしてから、マシンからRubyとrbenvをアンインストールします。

次のコマンドを実行して、Homebrewを使用してrbenvとruby-buildをアップグレードできます。

brew upgrade rbenv ruby-build

rbenvまたはruby-buildを更新する必要がある場合、Homebrewが自動的に更新します。 設定がすでに最新の場合、次のような出力が表示されます。

OutputError: rbenv  already installed
Error: ruby-build  already installed

これにより、利用可能なrbenvの最新バージョンを使用していることが保証されます。

Rubyの追加バージョンをダウンロードすると、 `〜/ .rbenv / versions +`ディレクトリに必要以上のバージョンが蓄積される場合があります。 ruby-buildプラグインの ` uninstall +`サブコマンドを使用して、これらの以前のバージョンを削除できます。

たとえば、次を実行してRubyバージョンをアンインストールします。

rbenv uninstall

`+ rbenv uninstall +`コマンドを使用すると、Rubyの古いバージョンをクリーンアップして、現在使用しているものより多くインストールしないようにすることができます。

rbenvを使用したくない場合は、システムから削除できます。

これを行うには、まずエディターで `+〜/ .bash_profile`ファイルを開きます:

nano ~/.bash_profile

ターミナルを開いたときにrbenvが起動しないようにするには、ファイルから次の行を見つけて削除します。

〜/ .bash_profile

...
eval "$(rbenv init -)"

この行を削除したら、ファイルを保存してエディターを終了します。

次のコマンドを実行して、シェルに変更を適用します。

source ~/.bash_profile

次に、rbenvおよびインストールされているすべてのRubyバージョンを次のコマンドで削除します。

rm -rf `rbenv root`

最後に、Homebrewを使用してrbenvパッケージ自体を削除します。

brew uninstall rbenv

rbenvバージョンをチェックして、アンインストールされていることを確認します。

rbenv -v

次の出力が得られます。

Output-bash: /usr/local/bin/rbenv: No such file or directory

これは、rbenvをマシンから正常に削除したことを意味します。

結論

このチュートリアルでは、macOSでrbenvを使用してRuby on Railsをインストールしました。 ここから、https://www.digitalocean.com/community/tutorial_series/how-to-code-in-ruby [Rubyでのコーディング方法]シリーズでRubyのコーディングの詳細を学ぶことができます。 また、https://www.digitalocean.com/community/tutorials/how-to-use-postgresql-with-your-ruby-on-rails-application-on-macos [PostgreSQL]でRuby on Railsを使用する方法を調べることもできます。 ]デフォルトのsqlite3データベースではなく、アプリケーションのスケーラビリティ、集中化、安定性が向上します。