質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

解決済

RubyとRailsの複数バージョン共存可能なMac環境構築について

asn
asn

総合スコア0

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

1回答

1評価

1クリップ

2166閲覧

投稿2016/11/12 11:19

rbenvとbundlerを使用して、RubyとRailsの複数バージョン共存可能なMac環境の構築ができたのですが、疑問な点があり、アドバイスをいただきければと思い、投稿させていただいた次第です。

[行いたいこと:目的]
Mac OSX El Capitan に複数のRubyバージョンを切替えれるようにする。また、Railsについてもプロジェクト毎にRailsのバージョンを分けれるようにする。
直近のターゲットは、最新のRuby(2.3.1)をglobalに。Railsチュートリアル学習用にlocalには、Ruby 2.2.1をインストールする。Railsについては、チュートリアル用の環境(sample_app)にRails 4.2.2をインストールする。

[疑問なところ]
以下、記載の手順で行い、環境構築ができ、Rails起動まで確認したのですが、以下、疑問なところがあり、教えていただけませんでしょうか。

1.以下の手順だと、Ruby 2.2.1をlocalに適用するため、sampleディレクトリに適用(手順6.1)し、その後、Railsをローカルにインストールするために、sampleディレクトリにインストール(手順6.4)し、ails new sample_app を行い、sample_appディレクトリにRails環境を構築しました。(詳細は「[実施したこと]」の通りです。)

疑問1. ローカルディレクトリ環境にRailsプロジェクト毎にバージョンを変え、Railsをインストールするためには、ワンクッション(今回の場合で言えばsampleディレクトリ)にRubyと、一時的Rails環境を作成するしかないのでしょうか。sample_appディレクトリだけにする方法はないのでしょうか。
現状、/sample/sample_appの構成で、sampleディレクトリにはsample_appだけがある状態です。この2階層を、/sample_appだけの構成にできるようなインストールのやり方はないのでしょうか。

疑問2. 構築した環境にvendor/bundle/ruby/2.2.0 があるのですが、2.2.1バージョンではなく、2.2.0が適用されているのでしょうか。sample_app下でバージョンを確認( ruby -v)すると2.2.1でしたが。

お手数ですが、ご教授いただければ幸甚です。

[実施したこと]
以下の要領で実施しました。長文となり、恐縮ですが、ご参考まで。なお、Rails起動まで確認し、Railsの初期画面が表示されることを確認しました。

1.rbenvのインストール
$ brew install rbenv

2.PATHを通す

3.最新バージョン 2.3.1をインストール
$ rbenv install 2.3.1

4.デフォルトで利用するバージョンを指定
$ rbenv global 2.3.1

5.Railsチュートリアルで使用するバージョン2.2.1をインストール
$ rbenv install 2.2.1

6.ローカルディレクトリにRails環境を構築

6.1 Railsチュートリアル実施のため、ローカル環境にRuby2.2.1を利用のためのディレクトリを作成。
$ mkdir ~/sample
$ cd sample

6.2 使用するRubyのバージョン 2.2.1を指定
$ rbenv local 2.2.1

6.3 Bundlerをインストール
$ rbenv exec gem install bundler
$ rbenv rehash

6.4 Bundlerを使用しRailsアプリケーションを作成するために一時的にrailsをローカルにインストール

(1) Gemfile作成(以下のみ指定)
gem "rails", "4.2.2"
(2) Railsのインストール実施
$ rbenv exec bundle install --path vendor/bundle

6.5 Railsアプリケーションの新規作成
先にbundleでインストールしたgemパッケージを利用し、Railsアプリケーション「sample_app」を作成

(1) Railsアプリケーションの新規作成
$ rbenv exec bundle exec rails new sample_app --skip-bundle
(2) Bundlerを使用し一時的に作成したbundlerの環境とローカルのRailsを削除
$ rm -f Gemfile
$ rm -f Gemfile.lock
$ rm -rf .bundle
$ rm -rf vendor

6.6 Railsアプリケーションの環境セットアップ

(1) 新規生成したRailsアプリケーションディレクトに移動
$ cd sample_app
(2) (Gemfileの編集は必要に応じ別途行うこととし) Railsの標準gemのインストール実施。
$ bundle install --path vendor/bundle

6.7 Railsアプリケーションが問題なく起動されることを確認。

すみませんが、よろしくお願いいたします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。