Ruby/Rails/gem/bundlerとは?各種インストール方法を解説


Rubyはどこからダウンロードするの?
gemは何をするものなのかいまいちわからない…
bundlerをインストールするって言われたけど何で?
Ruby on Railsってそもそも何?

「Rubyを使いこなしてWebアプリを開発するぞ!」と意気揚々と始めようとしたものの、このような理由でつまづいていないでしょうか。

この記事では、上のような疑問に答えながら、以下の操作手順を説明しています。

  • ruby/gem/bundler/railsとは
  • パッケージ管理ツール「bundler」をインストールする方法
  • bundlerを使ってRuby on Railsをインストールする方法

それでは、始めましょう。

ruby/gem/bundler/railsとは

Rubyとは

Rubyは、読みやすさを重視したプログラミング言語です。

回数を指定して処理を繰り返す場合に、以下のように記述できることが面白い点です。

3.times { puts 'foobar' }

このコードは、初見でも、3回「puts 'foobar'」を実行するというように読める気がしますね。

Rubyについては、以下の記事で詳しく説明していますので、ぜひご覧ください。

【専門知識いらず】Rubyとは?特徴やできることを網羅的に徹底解説
更新日 : 2019年6月1日

gemとは

実はRubyで「gem」と言ったときには、以下の2つの意味のどちらを指しているのか考える必要があります。

1つ目の「gem」は、他の開発者が作成しているパッケージ(プログラムの部品のこと。ライブラリとも)を指す言葉です(以降、gem)。

もう1つの「gem」は、Rubyのパッケージ管理ツールを指す言葉です(以降、パッケージ管理ツール「gem」)。

2つのgemの意味を、少し詳しく説明しましょう。

gem

gemは、他の開発者が作成しているパッケージ(プログラムの部品のこと。ライブラリとも)です。

他の開発者が作成しているgemを理解し、活用することで、自分で実装すると時間がかかる機能も簡単に実現できます。たとえば、(そもそも、Ruby on Railsもgemの一つですが)Ruby on Railsを使ってWebアプリを開発していたとします。

登録機能や認証機能が必要になったとして、それらを自分で実装すると、どれくらいの時間がかかるのか、想像したくありませんね。このユーザー登録機能や認証機能を簡単に実現できるdeviseというgemが公開されていて、誰でも自由に利用できます。

つまり、deviseを利用するだけで、簡単にユーザー登録機能や認証機能を実装できるのです。

deviseの使い方は以下の記事で説明していますので、参考にしてください。

rails devise完全入門!結局deviseって何ができるの?
更新日 : 2017年4月18日

Rubyには、deviseに限らず他の開発者が作成しているgemがたくさんあります。

gemを使いこなしていくことも、Rubyではとても大切なスキルと考えられています。

パッケージ管理ツール「gem」

パッケージ管理ツール「gem」は、gemをインストールしたり、アンインストールしたりするときに使うツールです。

ちなみに、2009年頃に「bundler」というパッケージ管理ツールが登場し、その後使いやすくなってからは、パッケージ管理ツール「gem」を直接扱う機会は減ってきています。

bundlerとは

bundlerは、他の開発者が作成しているgemを管理するためのツールです。

複数のgemの依存関係を記述できるため、依存関係が崩れて正常に動作しないといったトラブルを未然に防げます。たとえば、AとBの2つのgemがあり、Aのバージョン2を使うにはBのバージョン1が必要といったケースで、bundlerが活躍します。

このとき、AはBに依存している(AとBは依存関係がある)と言います。

あるとき、Bのバージョン2が公開され、誤ってそれをインストールしてしまったとします。

Aのバージョン2を使うにはBのバージョン1が必要だったのに、Bのバージョン2をインストールしてしまったため、おそらくAが正常に動作しなくなるトラブルが発生するでしょう。

このような状況を、依存関係が崩れてAが正常に動作しないと言います。

いかがでしょうか、依存関係があるgemを正しく管理するのは、非常に難しそうと感じませんか?そこで登場したのが、パッケージ管理ツール「bundler」です。

bundlerを使い、依存関係を正しく記述することで、複数のgemを依存関係を考慮してインストールできます。

このような大きなメリットがあるため、通常の開発プロジェクトでは、gemを管理するために、(パッケージ管理ツール「gem」ではなく)「bundler」がよく使用されています。

Ruby on Railsとは

Ruby on Railsは、Webアプリを開発する際に使用するフレームワーク(枠組み)です。

フレームワークをWebアプリの土台として開発を進めると、様々な機能がスムーズに実現できます。

特に海外では、Ruby on Railsを利用したWebアプリの開発事例が多く、開発者はRuby on Railsを使用するためにRubyを学んでいるとも言える状況です。

Ruby on Railsについて詳しくは、以下の記事を参照してください。

【超初心者でもわかる!】Ruby on Railsとは何かを簡単解説!
更新日 : 2019年9月11日

インストール方法

WindowsにRubyをインストールする

ここでは、RubyInstaller for Windowsを利用して、Windows 10(64bit版)にRubyをインストールする手順を説明します。

(1)RubyInstallersのダウンロードページにアクセスして、「Ruby+Devkit 2.5.1-2 (x64)」をクリックします。


rubyinstaller-devkit-2.5.1-2-x64.exeがダウンロードされます。

(2)rubyinstaller-devkit-2.5.1-2-x64.exeをダブルクリックします。

インストーラーが起動します。

(3)ライセンスを読み、「I accept the License」を選択して、「Next」をクリックします。

(4)設定を確認し、「Install」をクリックします。

この後、uruをインストールする場合は、「Add Ruby executables to your PATH」のチェックを外します。

(4)「Next」をクリックします。

インストールが始まります。

(5)「Run ‘rdisk install’ to setup MSYS2 (省略)」のチェックが付いていることを確認し、「Finish」をクリックします。

DevKit(MSYS2 toolchain)のインストーラが起動します。

(6)Enterキーを押します。

(7)もう一度、「If unsure press ENTER」と表示されたらEnterキーを押します。

以上で、RubyとDevKitのインストールが終了しました。

DevKit(Development Kit)とは

上で紹介した手順ではDevKitもインストールしました。DevKitは、Windows版のRubyで、一部のgemをインストールする際に必要なツールです。

他の人が作ったgemを絶対に使わない!という方は、DevKitなし(WITHOUT DEVKIT)のRubyinstallerをダウンロードすると良いでしょう。

uruとは

通常は、一台のパソコンには、一つのバージョンのRubyしかインストールできません。個人的な開発だけなら、好きなバージョンを使い続ければ良いでしょう。

しかし、仕事などでRubyのバージョンに制約がある場合は、好きなバージョンというわけにはいきません。

ある仕事ではRuby 2.4.4、また別の仕事ではRuby 2.5.1というように、Rubyのバージョンが異なる場合があります。

このような場合に便利なツールがuruです。uruを使うと、パソコンにインストール済みのRubyを簡単に切り替えられます。

あらかじめ、Ruby 2.4.4、Ruby 2.5.1、uruをインストールしておけば、さっきまではRuby 2.5.1を使って開発していたけど、今からはRuby 2.4.4を使う、といったことが簡単に実現できます。

ちなみに、MacやLinuxでは、rbenvというツールが人気です。Rubyのバージョンを切り替える方法(指定したRubyのバージョンを有効にする方法)については、以下の記事でまとめられていますので、あわせてご覧ください。


OS別!Rubyのインストール方法をわかりやすく解説!
更新日 : 2019年5月31日

パッケージ管理ツール「bundler」をインストールする

現在有効になっているRubyに、パッケージ管理ツール「bundler」をインストールしましょう。

(1)コマンドプロンプトを起動します。

(2)以下のコマンドを入力します。

gem install bundler

uruを使っている場合は、Rubyを切り替えて、すべてのRubyにbundlerをインストールしておきましょう。

bundlerの使い方については、以下の記事でまとめられていますので、ぜひご覧ください。

【Ruby入門】今更聞けない!Ruby bundlerとは
更新日 : 2019年1月11日

Ruby on Railsをインストールする

Ruby on Railsもgemの一つで、世界中のエンジニアが開発に携わっています。

参考:GitHub – rails/rails: Ruby on Rails

Ruby on Railsを、bundlerを使ってインストールしてみましょう。

ここでは、D:\Ruby on Rails\sampleフォルダでWebアプリを開発する場合のRuby on Railsのインストール手順を説明しています。

(1)コマンドプロンプトを起動して、以下のコマンドを1行ずつ順番に入力します。

D:
mkdir "Ruby on Rails\sample"
cd "Ruby on Rails\sample"
bundle init

Gemfileが作成されます。

(2)Gemfileを編集します。

変更前:

# frozen_string_literal: true

source "https://rubygems.org"

git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }

# gem "rails"

変更後:

# frozen_string_literal: true

source "https://rubygems.org"

git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }

gem "rails", "~> 5.1.0"

このように書くことで、Ruby on Railsのメジャーバージョンを5に限定して、マイナーバージョンアップは許可したことになります。

たとえば、バージョン5.2が公開されればバージョンアップされますが、バージョン6が公開されてもバージョンアップされません。

(3)コマンドプロンプトで以下のコマンドを入力します。

bundle install --path vendor/bundler

「D:\Ruby on Rails\sample」フォルダに、Ruby on Railsがインストールされます。

この後、「bundle exec rails new .」を実行してWebアプリのひな形を作成し、開発を始めることになりますが、それはまた別のお話です。

Ruby on Railsでよく使われるgemを紹介!

パッケージ管理ツール「gem」や「bundler」でインストールできるgemは、RubyGems.orgからダウンロードできます。

このRubyGems.orgにブラウザでアクセスすると、gemを検索できます。

gemを探す方法

gemの名前が分かっていたり、人気があるgemが分かっていれば、このサイトが便利です。

例えば、deviseと検索してみると、以下のようにdeviseもしくはdeviseに関連したgemが表示されます。

gemの検索結果

ダウンロード数が表示されていますが、実は多い順に並んでいないため、人気のgemが下の方に隠れているかもしれません。

そこで、おすすめしたいのが、BestGems.orgです。


同じように「devise」で検索してみると、このサイトではダウンロード数が多い順に表示されています。

このようなサイトを利用すれば、必要な機能を示すキーワードで検索して目的のgemを見つけたり、既存のgemの名前で検索して関連したgemを見つけたりできます。

たとえば、「bootstrap」で検索するとbootstrap-sassが見つかったり、「react」で検索するとreact-railsが見つかったりします。

うまく活用していきたいサイトですね!

なお、侍エンジニア塾ブログには、Ruby on Railsでよく使われるgemを紹介した記事がありますので、ぜひご覧ください!


rails devise完全入門!結局deviseって何ができるの?
更新日 : 2017年4月18日

これから本格的にRubyを学ぼうと考えてるあなたへ

今回の記事で、「Ruby・Rails・gem」のインストールについてご紹介しました。ですが実際にインストールしてみると

インストールの方法がよくわからない
インストールはできたけどその後の学習方法がよく分からない

このように思う人もいるんではないでしょうか?インストールするだけで何日もかかってしまうなんてことはよくある話です。

インストールは開発を行う最初の段階で、これから本格的に開発を行っていくと、エラーなどで学習が進めずに結局挫折してしまう人が後をたちません。

これから学習を進めるのに学習方法が分からず不安だな
自分で本当に開発をすることは出来るのか

こんな不安がある方は、弊社で行っている「無料体験レッスン」を受けてみてください。

無料体験を受けることで

  • Rubyを学んで今後どんなキャリアを目指していくのか
  • そのキャリアを考えた学習プランの提案
  • Ruby学習をこれから進めていく上での不安や疑問の解決


など、業界屈指のコンサルタントがあなたの不安や疑問に徹底的に寄り添います。

Rubyを学ぶ目的を明確化し、その明確になったキャリアに向かって最短で学習するための学習プランを提案させて頂きます。

なので、無駄のない学習で最速でエンジニアになれるイメージが湧くと思います。

まずは、無料体験レッスンを受けて、あなたが抱える不安や悩みを解決してから、本格的にRubyを学んでいきましょう。

Rubyを独学で頑張っているけど先が見えない方のために

いや、おれは違うぞ。先のキャリアもしっかり見えてるし、独学の成果も出てきている

そんな方であれば、これから先の話は必要ないでしょう。そっとページの閉じるボタンを押しましょう。

しかし、「先が見えない」と心の底では勘付いているそこの奥さん。この先を読み進めて、一緒に課題を深堀りしていきましょう。

なぜ「先が見えない」という不安や悩みを抱えてしまうのか

さて、「一寸先は闇だ・・・」とお悩みを抱えている方に、なぜ独学でRubyを勉強しているにもかかわらず、そのような現状を抱えてしまうのか、一緒に考えていきましょう。

先が見えない現状を踏まえ、課題として考えられるものは以下のどれかに該当するでしょう。

  • プログラミングの上達が見えない
  • プログラミングを継続できない気がする
  • プログラミングスキルを習得した姿がイメージできない
  • プログラミングスキルを活かした仕事を獲得するイメージができない

これらのどれかに該当することによって、「なんとなくプログラミング学習をしている」という状態になってしまいます。

これらの要因は、三日坊主になる理論と同じなんですが、「プログラミング学習をしなきゃ」とプログラミング学習を頑張ってしまっている状態になってしまっています。

受験勉強をやった経験のある方なら頭がもげるほどに首を縦に振ってしまう方も多いのですが、「今日も5時間勉強するぞ」や「今日はこの章を終わらすぞ」というように、学習を進めることに意識が行き過ぎてしまうと、ある程度学習を継続した後に「先が見えない・・・」となってしまいます。

未来に光を当て、プログラミング学習を「成果が出るもの」にするために

先ほど、「なぜ先が見えないという悩みや不安を抱えてしまうのか」という疑問に対しての答えを示していきました。

これらの課題というのは、独学をしていれば9割の方がぶつかってしまう壁だそうで、いわば、あるあるの現象なのです。

独学をしていて、「なんか前に進めていないぞ」と感じるのはこのせいなんですね。甘く見がちですが、非常にやっかい。

これがさらにやっかいさを極めているのは、上記に挙げた課題のほとんどが、1人で解決できないものばかりだからです。

実は、これらのほとんどが経験者に助けてもらいながら解決しないと、すぐに違う方向へと流れてしまいます。

そう言い切れるのは、以前の私もそうだったからです。

エンジニアやプログラマー関連のキャリアに詳しい方や現役のエンジニアに相談しながら修正を加え、学習を実践して今があります。

そうは言っても、周りにそういう人がいないし・・・

という方もいるでしょう。そういう時にこそ、プログラミングスクールの無料体験レッスンを利用するのです。

営業をかけられて時間の無駄に終わるでしょ?

という考えに辿りついてしまいますよね。結論から言うと弊社では、そういった強引な営業等を行うことはありませんので、安心して受講できます。

「プログラミング学習の先ある未来」を光で明るく照らすには、弊社の無料体験レッスンがぴったりだと断言できます。それくらい無料体験レッスンに自信を持っているのです。

さらに、無料体験レッスンには以下の3大特典もついてきます!

  • 「最短1ヶ月で開発ができる学習方法」電子書籍(非売品)
  • 効率的なオリジナル学習カリキュラム
  • 未経験の転職(フリーランス)を可能にするキャリアサポート

上記の特典だけでも他のスクールにはないポイントだと自信を持っている無料体験レッスン特典です。

ただプログラミング学習をする毎日から、ワクワクしながらプログラミング学習できる毎日に変える体験を一度でいいのでしてみませんか?

無料体験レッスン予約はこちら

まとめ

この記事では、Windows 10にRuby、bundler、Ruby on Railsをインストールする方法を説明しました。

また、便利なgemを探すサイトも紹介しましたので、うまいキーワードで検索して、開発スピードを上げていけるといいですね!

どの内容も、RubyやRuby on Railsで開発を進めるうえで必要な最低限の知識ですので、しっかり理解しておきましょう。

LINEで送る
Pocket

SEからWebエンジニアへ転職した理由

侍エンジニア塾卒業生の小池さんは、以前は社内SEとして約5年ほど勤務していました。しかし業務内容は社内のヘルプデスク対応など、プログラムを書く仕事は全くなかったそうです。

SEながらプログラムを書けない現状に「将来仕事がなくなるんじゃないか」と不安を感じ、プログラミング学習を決意。

弊社スクールで学習し、無事ベンチャー企業のプログラマーとして転職に成功しました。そんな小池さんの学習法や転職体験談を伺いましたので、是非ご覧ください。

「プログラミングができないSEは仕事がなくなる」不安を感じたSEが未経験から転職成功するまで
更新日 : 2019年10月7日

書いた人

侍テック編集部

侍テック編集部

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説