Help us understand the problem. What is going on with this article?

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

More than 3 years have passed since last update.

目的

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に伝わる。

sonoshou
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした