
Railsでアプリケーションが動くところまでをメモしておきます。
環境は
です。
仮想マシン上に
ローカルインストールで下記を参考に構築しました。
rbenv インストールから Bundler を使用した Rails のローカルインストールと起動まで
http://www.ubuntu.com/download/server
メモリ 512MB ディスク 4GBで標準的にインストール。接続のためOpenSSH Serverのみ入れている。
$ sudo apt-get update
$ sudo apt-get upgradeCode language: JavaScript (javascript) rubyやRailsのインストールで必要なものを入れておきます。下記はSQLite用。
$ sudo apt-get install git libreadline-dev libssl-dev libsqlite3-dev gcc g++ makeCode language: JavaScript (javascript) $ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
$ source ~/.bashrc
$ rbenv --versionCode language: PHP (php) バージョンが表示されればOK
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-buildCode language: PHP (php) $ rbenv install -l 目的のバージョンをインストール。最新のものを使っておけば良いと思います。
$ rbenv install 2.2.2
$ rbenv versions 結果がインストールしたバージョンと同じならOK
$ cd prj
$ rbenv local 2.2.2
$ rbenv versions バージョンの前に*がついたらOK
$ rbenv exec gem install bundler
$ rbenv rehash $ rbenv exec bundle init ローカルインストールのためGemfileにRailsを追加
# A sample Gemfile
source "https://rubygems.org"
gem "rails", '4.2.3'Code language: PHP (php) $ rbenv exec bundle install --path vendor/bundle $ rbenv exec bundle exec rails new project-name --skip-bundleCode language: JavaScript (javascript) Rails プロジェクトディレクトリが作成される
ここにできたものは使用しない。プロジェクト用ディレクトリに環境が用意されるのでそちらを使用する。
$ rm -f Gemfile
$ rm -f Gemfile.lock
$ rm -rf .bundle
$ rm -rf vendor $ cd project-name プロジェクトディレクトリ移動後はrbenv exec 省略可
このままBundlerでGemインストールすると実行時にJavascriptエンジンがなくて実行時エラーになる。その為、therubyracerをインストールする。このgemは依存関係がややこしくなっているらしい。詳細は下記参照。
Gemfileを編集してtherubyracerのコメントを外す。
# See https://github.com/rails/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :rubyCode language: PHP (php) $ rbenv exec bundle install --path vendor/bundle $ rbenv exec bundle listCode language: PHP (php) therubyracer やlibv8 がうまいことインストールされない場合は、直接バージョンをGemfileで指定すると解決するかもしれない。
libv8は3.11.8.0からリリース 偶数番号はソースのみ、奇数はバイナリ入りになっているので、libv8 gemをGemfileに追加してバイナリ入りのバージョンを指定してみる。
$ rbenv exec bundle exec rails server -b 0.0.0.0 ブラウザでhttp://[server_ip]:3000/にアクセスしてみる。
画面が見れれば動いている、OK。