-
Notifications
You must be signed in to change notification settings - Fork 20
LearningRailsWithTriglav01
以下の手順は、基本的には Linux を対象としています。(インフラエンジニアを想定して書いてるので。)Mac でも適用できる部分は多いですが、必要なライブラリや MySQL まわりなどは、自力で解決してください。(または誰かドキュメント追加して。)
今回は Triglav を動かすまでの手順を紹介します。
rbenv とは、複数の Ruby バージョンをお手軽に切り替えることができるコマンドラインツールです。システム標準の Ruby に影響を与えることなく、また、自分のホームディレクトリ配下に Ruby をインストールすることができるので、Ruby で何か試してみたい、という場合に、うってつけなツールです。
rbenv で Ruby を入れるために必要なパッケージを予め入れておきます。
$ sudo yum install -y gcc gcc-c++ make zlib-devel openssl-devel readline-devel \
db4-devel libxml2-devel expat-devel libxslt-devel mysql-devel
Mac で Homebrew を利用している場合は、 以下のコマンドでインストールできます。
$ brew install rbenv
Linux の場合には、以下の手順でインストールします。(~/.bash_profile は、利用しているシェルに合わせて適宜変更してください。)
$ cd
$ git clone git://github.com/sstephenson/rbenv.git .rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ exec $SHELL
ruby-build は、rbenv 用のプラグインで、このプラグインを入れることにより、rbenv install コマンドが使えるようになります。
インストールは以下の手順で行います。
- brew でインストールする方法 (Mac)
brew install ruby-build
- GitHub より clone する方法
$ mkdir -p ~/.rbenv/plugins
$ cd ~/.rbenv/plugins
$ git clone git://github.com/sstephenson/ruby-build.git
これで rbenv install コマンドが使えるようになります。
Triglav は Ruby 1.9.3-p286 上で動くことを前提としてるので、以下のコマンドで Ruby 1.9.3-286 をインストールします。
$ rbenv install 1.9.3-p286
$ rbenv global 1.9.3-p286
$ rbenv rehash
$ ruby -v
ruby 1.9.3p286 (2012-10-12 revision 37165) [x86_64-linux]
$ cd
$ git clone git://github.com/kentaro/triglav.git
$ cd triglav
ここで、適切な Ruby バージョンが使われるか、以下のコマンドで確認します。
$ rbenv version
1.9.3-p286 (set by /home/mizzy/triglav/.rbenv-version)
Triglav には .rbenv-version というファイルが含まれています。このファイルがカレントディレクトリにある場合、rbenv はこのファイルで指定されたバージョンの Ruby を使うように動作します。
bundler は、RubyGems 管理用のツールです。これを利用することで、必要な gem(Ruby用モジュール) を簡単にインストールできたり、gem バージョンの一貫性を保つことができます。
bundler のインストールは以下のように実行します。
$ gem install bundler
$ rbenv rehash
$ exec $SHELL
bundler を実行して、Triglav に必要な gems をまとめてインストールします。
$ bundle install --deployment
bundle install を実行すると、Gemfile または Gemfile.lock というファイルの内容にしたがって、必要な gems をインストールします。(Ruby On Rails もここでインストールされます。)
Gemfile.lock がない場合には、Gemfile の内容にしたがって gems のインストールを行い、Gemfile.lock にインストールした gems のバージョンや依存関係などが記録されます。
Gemfile.lock がある場合には、このファイルの内容にしたがって gems のインストールを行います。したがって、あるサーバで bundle install した時にできた Gemfile.lock を別のサーバに持って行って bundle install すれば、まったく同じバージョンの gems がインストールされます。
Triglav には Gemfile と Gemfile.lock が含まれているので、中を覗いてみましょう。
また、--deployment をつけることにより、カレントディレクトリの vendor/bundle 以下に gems をインストールするので、他の場所にインストールされた、バージョン違いの gems に影響されることはありません。
データベース情報など、開発のために必要なファイルがいくつかあります。以下のようにコマンドを実行して、生成しましょう。
$ rake setup
開発に必要な、以下のファイルが生成されます。
- config/database.yml
- config/initializers/secret_token.rb
- config/settings/{test,development}.yml
Triglav は GitHub ログインを利用しているため、GitHub へのアプリケーション登録が必要になります。
まず、GitHub 上で、右上の工具アイコンをクリック、左のメニューから「Applications」を選択します。

右上の「Register new application」をクリックします。

Main URL と Callback URL に、自分の環境にあった値を設定し、「Register application」をクリック。

ここで表示されている Client ID と Client Secret を「開発に必要なファイルの生成」で生成した config/settings/development.yml に設定します。また、organization には、アクセスを許可する人が属する GitHub 組織アカウントを指定します。
github:
organizations:
- paperboy-all # 適宜変更してください
client_id: xxxxxxxxxxxxxxx # 上記のページに表示されている Client ID
client_secret: xxxxxxxxxxx # 上記のページに表示されている Client Secret
「開発に必要なファイルの生成」で生成した config/database.yml の development セクションが、以下のようになってることを確認。
development:
adapter: mysql2
encoding: utf8
username: root
password:
database: triglav_development
host: localhost
基本的にこのままで OK。
インストール&起動。
$ sudo yum install mysql-server
$ sudo /etc/init.d/mysqld start
$ sudo chkconfig mysqld on
rake db:setup を実行してデータベースやテーブルを作成します。
$ rake db:setup
$ bundle exec rails server
=> Booting WEBrick
=> Rails 4.0.0.beta application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2012-10-23 13:28:59] INFO WEBrick 1.3.1
[2012-10-23 13:28:59] INFO ruby 1.9.3 (2012-10-12) [x86_64-linux]
[2012-10-23 13:28:59] INFO WEBrick::HTTPServer#start: pid=30623 port=3000
3000 番ポートにアクセスして、以下のような画面が出ていれば、起動成功です。Sign in から GitHub アカウントでログインしてみましょう。

ログインに成功すれば、このような画面になります。

適当に色々いじってみましょう。