Ubuntu 22.04でrbenvを使用してRuby on Railsをインストールする方法を説明します。
はじめに
Ruby on Railsは、サイトやWebアプリを作成したい開発者にとって最も人気のあるアプリケーションスタックの一つです。Rubyプログラミング言語とRails開発フレームワークが組み合わさることで、スケーラブルなアプリを迅速に構築・展開することができます。
コマンドラインツールrbenvを使用して、RubyとRailsをインストールすることができます。rbenvを使うことで、Ruby on Railsアプリケーションの開発環境を安定させ、異なるRubyのバージョンを切り替えることができます。全てのチームメンバーが同じバージョンを使用することができます。また、rbenvはアプリケーションごとに異なるRubyのバージョンを指定する機能も提供しており、ユーザーごとにグローバルなRubyを変更することや環境変数を使ってRubyのバージョンを上書きすることも可能です。
このチュートリアルでは、rbenvとgemを使用してRubyとRailsのインストールプロセスに従います。まず、rbenvとRubyをインストールするための適切なパッケージをインストールします。次に、ruby-buildプラグインをインストールして利用可能なRubyのバージョンをインストールします。最後に、gemを使用してRailsをインストールし、Ruby on Railsを使用してウェブ開発を始めることができます。さらに、rbenvのバージョンが最新であるかどうかをチェックする方法や、Rubyのバージョンとrbenvのアンインストール方法も学びます。
前提条件
このチュートリアルに従うためには、次のものが必要です:
- One Ubuntu 22.04 server set up by following the Ubuntu 22.04 initial server setup guide, including a sudo non-root user and a firewall.
- Node.js installed using the official PPA, as explained in option 2 of How To Install Node.js on Ubuntu 22.04. A few Rails features, such as the Asset Pipeline, depend on a JavaScript Runtime. Node.js provides this functionality.
ステップ1 – rbenvとその依存関係をインストールします。
Rubyは、あなたのパッケージマネージャーを通じてインストール可能ないくつかのパッケージに依存しています。それらがインストールされたら、rbenvをインストールしてRubyを使用することができます。
まずは、パッケージリストを更新してください。
- sudo apt update
次に、Rubyをインストールするために必要な依存関係をインストールします。
- sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev
依存関係をインストールした後、rbenv自体をインストールすることができます。GitHubからインストールスクリプトを取得し、それをbashにパイプしてインストーラーを実行するためにcurlを使用してください。
- curl -fsSL https://github.com/rbenv/rbenv-installer/raw/HEAD/bin/rbenv-installer | bash
次に、rbenvコマンドラインユーティリティを使用できるように、$PATHに~/.rbenv/binを追加します。これを行うには、~/.bashrcファイルを変更して、将来のログインセッションに影響を与えるようにします。
- echo ‘export PATH=”$HOME/.rbenv/bin:$PATH”‘ >> ~/.bashrc
その後、コマンド「eval “$(rbenv init -)”」を~/.bashrcファイルに追加してください。これにより、rbenvが自動的に読み込まれます。
- echo ‘eval “$(rbenv init -)”‘ >> ~/.bashrc
次に、~/.bashrc ファイルに行った変更を現在のシェルセッションに適用してください。
- source ~/.bashrc
rbenvコマンドに関する詳細情報を表示するtypeコマンドを実行して、rbenvが正しくセットアップされているか確認してください。
- type rbenv
あなたのターミナルウィンドウには、以下の内容が表示されます。
rbenv 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-buildを使用してRubyをインストールする
ruby-buildプラグインがインストールされている場合は、1つのコマンドで必要なRubyのバージョンをインストールすることができます。まず、利用可能なすべてのRubyのバージョンをリストアップしてください。
- rbenv install -l
そのコマンドの出力には、インストールすることができるすべてのバージョンが一覧表示されます。
2.7.7 3.0.5 3.1.3 3.2.0 jruby-9.4.0.0 mruby-3.1.0 picoruby-3.0.0 truffleruby-22.3.1 truffleruby+graalvm-22.3.1 Only latest stable releases for each Ruby implementation are shown. Use ‘rbenv install –list-all / -L’ to show all local versions.
今、Ruby 3.2.0をインストールしてください。
- rbenv install 3.2.0
Rubyのインストールは時間がかかる可能性がありますので、インストールが完了するまでには時間がかかることを覚悟してください。
インストールが完了したら、globalサブコマンドを使ってRubyのデフォルトバージョンとして設定してください。
- rbenv global 3.2.0
Rubyのバージョン番号を確認して、正しくインストールされていることを確認してください。
- ruby -v
バージョン3.2.0のRubyをインストールした場合、このコマンドを実行すると、このような出力が返されます。
ruby 3.2.0 (2022-12-25 revision a528908271) [x86_64-linux]
あなたは現在、少なくとも1つのRubyのバージョンをインストールし、デフォルトのRubyのバージョンを設定しています。次に、gemとRailsをセットアップします。
ステップ3 – ジェムとの作業
ジェムは、Rubyのライブラリが配布される方法です。これらのジェムを管理するためにgemコマンドを使用し、このコマンドを使ってRailsをインストールします。
ジェムをインストールすると、インストールプロセスによってローカルのドキュメンテーションが生成されます。これにより、各ジェムのインストールプロセスにかなりの時間がかかる場合がありますので、この機能を無効にするために「~/.gemrc」というファイルを作成し、この機能をオフにする設定を含めてください。
- echo “gem: –no-document” > ~/.gemrc
Bundlerはプロジェクトのgem依存関係を管理するツールです。Railsはそれに依存しているため、次にBundler gemをインストールしてください。
- gem install bundler
以下の出力を受け取ります。
Fetching bundler-2.4.5.gem Successfully installed bundler-2.4.5 1 gem installed
以下のように、環境やgemの設定について詳しく知るために、gem envコマンド(envサブコマンドは環境を表す)を使用することができます。以下のようにhome引数を使用して、gemをインストールしている場所を確認することもできます。
- gem env home
これと似たような出力が届きます。 (Kore to nita you na shutsuryoku ga todokimasu.)
/home/sammy/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0
ジェムがセットアップされた後に、Railsをインストールすることができます。
ステップ4-Railsのインストール
Railsをインストールするには、バージョンを指定するために -v オプションを使用して gem install コマンドを使います。このチュートリアルでは、バージョン7.0.4を使用します。
- gem install rails -v 7.0.4
gemコマンドは、指定したgemとその依存関係をインストールします。Railsは複雑なウェブ開発フレームワークであり、多くの依存関係を持っているため、完了までには時間がかかるでしょう。最終的に、Railsとその依存関係がインストールされたことを示すメッセージが表示されます。
… Successfully installed rails-7.0.4 35 gems installed
Note
gem search ‘^rails$’ –all
gem install rails -v 4.2.7
もし最新バージョンのRailsをインストールしたい場合は、バージョンが指定されていないコマンドを実行してください:
gem install rails
rbenvは、現在有効なRubyバージョンが使用するファイルを指すshimsのディレクトリを作成することで動作します。rbenvは、rehashサブコマンドを介して、サーバー上のインストールされた各RubyバージョンのすべてのRubyコマンドに対応するようにshimsを維持します。新しいバージョンのRubyをインストールしたり、Railsのようなコマンドを提供するgemをインストールした場合は、以下を実行する必要があります。
- rbenv rehash
以下のコマンドを使用して、Railsのバージョンを表示して正しくインストールされているか確認してください。
- rails -v
正しくインストールされていれば、次のコマンドを実行すると、Railsのインストールされたバージョンが返されます。
Rails 7.0.4
この時点で、Ruby on Railsのインストールをテストし、Webアプリケーションの開発を始めることができます。さて、rbenvを最新の状態に保つ方法を見直しましょう。
ステップ5 – rbenvの更新
Gitを使用してrbenvを手動でインストールしたため、~/.rbenvディレクトリでgit pullコマンドを使用することで、いつでも最新バージョンにアップグレードすることができます。
- cd ~/.rbenv
- git pull
これにより、利用可能な最新のrbenvのバージョンを使用していることが保証されます。
6段階:Rubyバージョンをアンインストールする
Rubyの追加バージョンをダウンロードすると、~/.rbenv/versionsディレクトリに望ましくない数のバージョンが蓄積されるかもしれません。この前のバージョンを削除するために、ruby-buildプラグインのuninstallサブコマンドを使用してください。
次のコマンドを実行すると、Rubyバージョン3.2.0がアンインストールされます。
- rbenv uninstall 3.2.0
rbenvのuninstallコマンドを使用すると、現在使用している以上のRubyの古いバージョンを削除することができます。
第7ステップ – rbenvのアンインストール
もしも rbenv を使用しなくなった場合は、システムから削除することができます。
これを行うには、好きなテキストエディタで ~/.bashrc ファイルを開きます。この例では、nano を使用します。
- nano ~/.bashrc
ファイルから次の2行を見つけて削除してください。
~/.bashrc自分の場所/.bashrc
...
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
これらの行を削除した後、ファイルを保存し、エディターを終了します。もしnanoを使っている場合は、 CTRL + X、Y、ENTER の順に押すことで終了することができます。
次のコマンドを使って、rbenvとインストールされたすべてのRubyバージョンを削除してください。
- rm -rf `rbenv root`
シェルへの変更を適用するためにログアウトしてから再度ログインしてください。
結論
このチュートリアルでは、Ruby on Railsフレームワーク全体をインストールするために、rbenvとgemをインストールしました。これで、ウェブ開発アプリケーションのプロジェクトを作成することができます。もし、それらの環境をより堅牢にする方法についてもっと学びたい場合は、当社の「Rubyでコーディングする方法」シリーズをご覧いただけます。