LoginSignup
5
4

More than 5 years have passed since last update.

vagrant上でrails 4.2.4プロジェクトを作成する

Last updated at Posted at 2015-10-06

目的

vagrant環境上に、railsプロジェクトを作成した際にハマった点をメモする。

前提

windows環境にvagrantを入れて、rails 4.2.4プロジェクトを作成する。

  • vagrant (CentOS6.5)
  • ruby 2.1.7 (rbenv)
  • rails 4.2.4

vagrantのインストールは、
Windows上でVirtualBox+Vagrant+CentOSによる仮想環境構築|Qiita @hiroyasu55

ruby + railsのインストールは、
rails環境構築(CentOS + ruby on rails)|Qiita @shinyashikis@github

上記を参考にした。

新規rails4.2.4プロジェクトの作成

1. rails new コマンドで新しいプロジェクトを作成。

自動的に、bundle installを行わないように、-- skip-bundleオプションをつける。

rails new project_name --skip-bundle

下記でも可。

rails new project_name -B

2. Gemfileの編集

therubyracerの行をコメントインする。
JavaScript のエンジンv8を Ruby から使えるようにする。

vim Gemfile

3. gemのインストール

このとき、環境に依存しないように、pathを指定する。

bundle install --path=vendor/bundle

ハマりポイント1

railsのプロジェクトがWindowsとvagrant上のCentOSの共有フォルダ内である場合、
上記コマンドが失敗する場合がある。
この場合は、pathを共有フォルダ以外に指定する必要がある。
以下に例を示す。

bundle install --path=~/bundle/project_name

以上は、下記のブログを参照した。
Vagrant環境でのbundle installで失敗する|tamo's blog

4. WEBrick起動

WEBrick起動

bundle exec rails s

http://localhost(or IP):3000 にアクセス。

ハマりポイント2

Vagrantを使用している場合は、ポート番号とIPアドレスを指定する必要がある。
IPアドレスがわからない場合は、 ifconfig で調べる。
ポート番号はデフォルトポート3000番を使用する場合、省略可能である。

bundle exec rails s (-p 3000) -b 192.168.33.10

上記のようにポート番号とIPアドレスを指定した場合、以下のようにアクセス。

http://192.168.33.10:3000

追記:
以上については以下のページが詳しいので、ご参照ください。
Rails 4.2.0のrails serverにアクセスできない|Qiita @mizoki

オプション

以下は、お好みで。

不要なログを削除する

本節は、下記のブログを大いに参考にした。
Railsメモ(21) : quiet_assetsでアセットパイプラインのログを出力しないようにする |もた日記

WEBrick起動中、IPアドレスやアセットパイプラインのログが出る場合がある。
これらが不要の場合は、以下を行う。

IPアドレスのログの非表示

config/environments/development.rbに以下を追加する。

Rails.application.configure do
  …
  config.web_console.whitelisted_ips = '192.168.33.1'
end

アセットパイプラインのログの非表示

Gemfileに以下を追加して、 bundle install を実行する。

group :development do
  gem 'quiet_assets'
end

一時的にログを出力したい場合は、 config/application.rb に下記行を追加。

config.quiet_assets = false

Hamlを利用する

本節は、下記のブログを大いに参考にしました。
Rails 4 で Haml を利用する手順|Qiita @ hkusu

1. Gemfileに追加

gem 'haml-rails'
gem 'erb2haml'

2. bundle install を実行

ちなみに、 .bundle/configvendor/bundle の場所を保存してあるので、
2回目以降は、 path を指定する必要はない。

bundle install

3. rake haml の実行

./bin/rake haml:replace_erbs

以上で、元からある.erbファイルが.hamlファイルに変換され、
hamlが使用されることがrailsに伝わる。

5
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4