ubuntu14.04にRuby on Rails環境を構築する手順
Contents
はじめに
インストールしたてのubuntu14.04にRails環境を構築したのでその手順をメモしておきます。Ruby、rbenv、Railsをインストールして動作確認するまでの作業メモとなります。
環境と前提
- OS: ubuntu server 14.04
下準備
まずはじめにapt-get update
でubuntuをアップデートし、その後RubyやRailsをインストールする際に必要となるライブラリやソフトウェアを同じくapt-get
でインストールしておきます。以下では個人的にMySQLをRailsで使うのでMySQL関係のライブラリもインストールしていますが、不要な方はインストールしなくて大丈夫です。
1 2 3 |
$ sudo apt-get update $ sudo apt-get install git build-essential libssl-dev libffi-dev $ sudo apt-get install libxslt-dev libxml2-dev libsqlite3-dev nodejs libmysqld-dev libmysqlclient-dev mysql-server mysql-client |
以上で下準備は完了です。
rbenvのインストール
続いてRubyのインストールや管理をするためにrbenv
をインストールします。インストールは以下のようにgit
を使います。
1 2 |
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv $ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build |
もしすでにrbenv
をインストールしたことがあり、最新版にアップデートしたい場合は以下のコマンドを実行します。
1 2 3 4 |
$ cd ~/.rbenv $ git pull origin master $ cd ~/.rbenv/plugins/ruby-build $ git pull origin master |
また、rbenv
を使用するためにパスを以下コマンドで通しておきます。
1 2 |
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile $ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile |
なお、パスを追加する際に.bash_profile
や.bashrc
などどれにパスを追加していいかわからなくなる場合がありましたが、以下の参考サイトが勉強になりました。ありがとうございました。
パスを追加したら再読み込みします。
1 |
$ source .bash_profile |
以上でrbenv
のインストールは完了です。
Rubyをインストール
次にRubyをインストールします。まず以下コマンドでインストール可能なRubyのバージョンのリストを表示します。
1 2 3 4 5 6 7 8 9 10 11 12 |
$ rbenv install -l ... 2.1.3 2.1.4 2.1.5 2.2.0-dev 2.2.0-preview1 2.2.0-preview2 2.2.0-rc1 2.2.0 2.3.0-dev ... |
表示されたリストの中で数値だけでかつ値が最も大きいものが最新版になりますので、それをインストールします。上記の場合だと、2.2.0
が最新版になります。これを以下のコマンドでインストールします。結構時間がかかります。
1 |
$ rbenv install 2.2.0 |
以下コマンドでデフォルトで使用するRubyのバージョンをいまインストールした2.2.0
に指定します。
1 |
$ rbenv global 2.2.0 |
以上でRubyのインストールは完了です。
Ruby 2.2.0をインストールした時に遭遇したエラー
上記のrbenv install 2.2.0
を実行した時に以下のようなエラーに遭遇しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
ubuntu@ubuntu:~$ rbenv install 2.2.0 Downloading ruby-2.2.0.tar.gz... -> http://dqw8nmjcqpjn7.cloudfront.net/7671e394abfb5d262fbcd3b27a71bf78737c7e9347fa21c39e58b0bb9c4840fc Installing ruby-2.2.0... BUILD FAILED (Ubuntu 14.04 using ruby-build 20150226-3-g0901e41) Inspect or clean up the working tree at /tmp/ruby-build.20150301009650.6655 Results logged to /tmp/ruby-build.20150301009650.6655.log Last 10 log lines: make[3]: Leaving directory `/tmp/ruby-build.20150301009650.6655/ruby-2.2.0/ext/fiddle/libffi-3.2.1' linking shared-object fiddle.so /usr/bin/ld: ./libffi-3.2.1/.libs/libffi.a(raw_api.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC ./libffi-3.2.1/.libs/libffi.a: error adding symbols: Bad value collect2: error: ld returned 1 exit status make[2]: *** [../../.ext/x86_64-linux/fiddle.so] Error 1 make[2]: Leaving directory `/tmp/ruby-build.20150301009650.6655/ruby-2.2.0/ext/fiddle' make[1]: *** [ext/fiddle/all] Error 2 make[1]: Leaving directory `/tmp/ruby-build.20150301009650.6655/ruby-2.2.0' make: *** [build-ext] Error 2 |
このエラーは冒頭の下準備の際にインストールしたはずのlibffi-dev
をインストールし忘れたことが原因でした。2.2.0
のインストールにはlibffi-dev
がインストールされている必要があるようです。ちなみに2.1.5
をインストールした場合にはlibffi-dev
が無くても問題なくインストールが完了しました。
bundlerをインストール
次にGemパッケージを管理するためのbundler
を以下コマンドでインストールします。
1 |
$ gem install bundler |
Gemやbundler
については下記サイトが参考になるかもしれません。
以上でBundlerのインストールは完了です。
Railsのインストールと動作確認
最後にRailsをインストールして動作確認を行います。Railsのインストールは以下のようにgem
コマンドでOKです。
1 |
$ gem install rails --no-ri --no-rdoc |
なお、--no-ri
、--no-rdoc
オプションはそれぞれri
、rdoc
形式のドキュメントの自動生成を行わないことを意味します。これらはいわゆるリファレンスドキュメントのようなものです。
以上でRailsのインストールは完了です。あとは動作確認を行います。
1 2 3 4 |
$ cd # ホームディレクトリに移動。もちろん各自任意の場所でOKです。 $ mkdir railsapp # railsアプリ用のディレクトリ作成 $ cd railsapp # railsアプリ用のディレクトリに移動 $ rails new first_app # railsコマンドで新規Railsアプリ作成 |
以上でrailsapp
ディレクトリにfirst_app
という名前のディレクトリが作成されます。そしてこのfirst_app
に移動して、以下コマンドを実行すればRailsが起動します。
1 2 |
$ cd first_app $ rails server -b 0.0.0.0 |
上記のrails server
はrails s
という短縮形でも実行できます。また、-b 0.0.0.0
は、どこからのアクセスでも受け付けるようにするためのオプションになります。
development
環境のデフォルト設定ではlocalhost
からのアクセスしか受付ません。
ブラウザからhttp://サーバのIPアドレス:3000
にアクセスして以下の様な画面が表示されればRailsが正常に起動しています。
rails server実行時のエラー
ちなみに私の環境では、rails server -b 0.0.0.0
を実行した際に以下のようなメッセージが最初表示されました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
ubuntu@ubuntu:~/railsapp/first_app$ rails s -b 0.0.0.0 bin/rails:6: warning: already initialized constant APP_PATH /home/ubuntu/railsapp/first_app/bin/rails:6: warning: previous definition of APP_PATH was here Usage: rails COMMAND [ARGS] The most common rails commands are: generate Generate new code (short-cut alias: "g") console Start the Rails console (short-cut alias: "c") server Start the Rails server (short-cut alias: "s") dbconsole Start a console for the database specified in config/database.yml (short-cut alias: "db") new Create a new Rails application. "rails new my_app" creates a new application called MyApp in "./my_app" In addition to those, there are: destroy Undo code generated with "generate" (short-cut alias: "d") plugin new Generates skeleton for developing a Rails plugin runner Run a piece of code in the application environment (short-cut alias: "r") All commands can be run with -h (or --help) for more information. |
この場合はRailsアプリディレクトリにあるGemfile
に以下を追記してbundle install
を実行してください。
1 |
gem 'rb-readline' |
bundle install
したあとで改めてrails s -b 0.0.0.0
を実行すればRailsが起動すると思います。もしこの作業でも解決できなかった場合は、まずgem uninstall rb-readline
を実行して改めてbundle install
してみるといいかもしれません。
おわりに
ubuntu14.04にRails環境を構築する手順をメモしました。色々調べながら行いましたが、もし間違えなどあったら指摘して頂けると嬉しいです。
参考サイト様
SPONSORED LINK
この投稿へのトラックバック
-
-
[…] Ruby, Railsのインストールは完了している環境 (参考:ubuntu14.04にRuby on Rails環境を構築する手順) […]
-
- トラックバック URL
この投稿へのコメント